File tree-sitter-tcl-0+20241105.98015eb.obscpio of Package tree-sitter-tcl
07070100000000000081A4000000000000000000000001672A2240000001F6000000000000000000000000000000000000003100000000tree-sitter-tcl-0+20241105.98015eb/.editorconfigroot = true
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
[*.{json,toml,yml,gyp}]
indent_style = space
indent_size = 2
[*.js]
indent_style = space
indent_size = 2
[*.rs]
indent_style = space
indent_size = 4
[*.{c,cc,h}]
indent_style = space
indent_size = 4
[*.{py,pyi}]
indent_style = space
indent_size = 4
[*.swift]
indent_style = space
indent_size = 4
[*.go]
indent_style = tab
indent_size = 8
[Makefile]
indent_style = tab
indent_size = 8
07070100000001000081A4000000000000000000000001672A22400000010A000000000000000000000000000000000000003200000000tree-sitter-tcl-0+20241105.98015eb/.gitattributes* text eol=lf
src/*.json linguist-generated
src/parser.c linguist-generated
src/tree_sitter/* linguist-generated
bindings/** linguist-generated
binding.gyp linguist-generated
setup.py linguist-generated
Makefile linguist-generated
Package.swift linguist-generated
07070100000002000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000002B00000000tree-sitter-tcl-0+20241105.98015eb/.github07070100000003000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000003500000000tree-sitter-tcl-0+20241105.98015eb/.github/workflows07070100000004000081A4000000000000000000000001672A2240000004EB000000000000000000000000000000000000003C00000000tree-sitter-tcl-0+20241105.98015eb/.github/workflows/ci.ymlname: CI
on:
push:
branches: [main]
paths:
- grammar.js
- src/**
- test/**
- bindings/**
- binding.gyp
pull_request:
paths:
- grammar.js
- src/**
- test/**
- bindings/**
- binding.gyp
concurrency:
group: ${{github.workflow}}-${{github.ref}}
cancel-in-progress: true
jobs:
test:
name: Run tests
runs-on: ${{matrix.os}}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-14]
steps:
- uses: tree-sitter/parser-setup-action@v1.1
with:
node-version: ${{vars.NODE_VERSION}}
- uses: tree-sitter/parser-test-action@v1.2
with:
test-library: false
fuzz:
name: Fuzz parser
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 2
- name: Check for scanner changes
id: scanner-changes
run: |-
if git diff --quiet HEAD^ -- src/scanner.c; then
printf 'changed=false\n' >> "$GITHUB_OUTPUT"
else
printf 'changed=true\n' >> "$GITHUB_OUTPUT"
fi
- uses: tree-sitter/fuzz-action@v4
if: steps.scanner-changes.outputs.changed == 'true'
07070100000005000081A4000000000000000000000001672A22400000001A000000000000000000000000000000000000002E00000000tree-sitter-tcl-0+20241105.98015eb/.gitignorebuild
node_modules
parser
07070100000006000081A4000000000000000000000001672A22400000020E000000000000000000000000000000000000002E00000000tree-sitter-tcl-0+20241105.98015eb/Cargo.toml[package]
name = "tree-sitter-tcl"
description = "TCL grammar for the tree-sitter parsing library"
version = "1.0.0"
keywords = ["incremental", "parsing", "TCL"]
categories = ["parsing", "text-editors"]
repository = "https://github.com/tree-sitter/tree-sitter-tcl"
edition = "2018"
license = "MIT"
build = "bindings/rust/build.rs"
include = [
"bindings/rust/*",
"grammar.js",
"queries/*",
"src/*",
]
[lib]
path = "bindings/rust/lib.rs"
[dependencies]
tree-sitter-language = "0.1.0"
[build-dependencies]
cc = "1.0"
07070100000007000081A4000000000000000000000001672A22400000042E000000000000000000000000000000000000002B00000000tree-sitter-tcl-0+20241105.98015eb/LICENSEMIT License
Copyright (c) 2022 Lewis Russell
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
07070100000008000081A4000000000000000000000001672A2240000000E7000000000000000000000000000000000000002C00000000tree-sitter-tcl-0+20241105.98015eb/Makefile.PHONY: build
build: parser/tcl.so
parser/tcl.so: src/parser.c src/scanner.c
$(RM) $@
mkdir -p parser
tree-sitter build -o $@
src/parser.c: grammar.js
tree-sitter generate
.PHONY: test
test: parser/tcl.so
tree-sitter test
07070100000009000081A4000000000000000000000001672A2240000005EF000000000000000000000000000000000000003100000000tree-sitter-tcl-0+20241105.98015eb/Package.swift// swift-tools-version:5.3
import PackageDescription
let package = Package(
name: "TreeSitterTcl",
platforms: [.macOS(.v10_13), .iOS(.v11)],
products: [
.library(name: "TreeSitterTcl", targets: ["TreeSitterTcl"]),
],
dependencies: [],
targets: [
.target(name: "TreeSitterTcl",
path: ".",
exclude: [
"Cargo.toml",
"Makefile",
"binding.gyp",
"bindings/c",
"bindings/go",
"bindings/node",
"bindings/python",
"bindings/rust",
"prebuilds",
"grammar.js",
"package.json",
"package-lock.json",
"pyproject.toml",
"setup.py",
"test",
"examples",
".editorconfig",
".github",
".gitignore",
".gitattributes",
".gitmodules",
],
sources: [
"src/parser.c",
// NOTE: if your language has an external scanner, add it here.
],
resources: [
.copy("queries")
],
publicHeadersPath: "bindings/swift",
cSettings: [.headerSearchPath("src")])
],
cLanguageStandard: .c11
)
0707010000000A000081A4000000000000000000000001672A224000000280000000000000000000000000000000000000002D00000000tree-sitter-tcl-0+20241105.98015eb/README.md[![CI][ci]](https://github.com/tree-sitter-grammars/tree-sitter-tcl/actions/workflows/ci.yml)
[![discord][discord]](https://discord.gg/w7nTvsVJhm)
[![matrix][matrix]](https://matrix.to/#/#nvim-treesitter:matrix.org)
A tree-sitter parser for TCL.
[nvim-treesitter]: https://github.com/nvim-treesitter/nvim-treesitter
[ci]: https://img.shields.io/github/actions/workflow/status/tree-sitter-grammars/tree-sitter-tcl/ci.yml?logo=github&label=CI
[discord]: https://img.shields.io/discord/1063097320771698699?logo=discord&label=tree-sitter
[matrix]: https://img.shields.io/matrix/nvim-treesitter%3Amatrix.org?logo=matrix&label=nvim-treesitter
0707010000000B000081A4000000000000000000000001672A2240000001C7000000000000000000000000000000000000002F00000000tree-sitter-tcl-0+20241105.98015eb/binding.gyp{
"targets": [
{
"target_name": "tree_sitter_tcl_binding",
"dependencies": [
"<!(node -p \"require('node-addon-api').targets\"):node_addon_api_except",
],
"include_dirs": [
"src",
],
"sources": [
"bindings/node/binding.cc",
"src/parser.c",
# NOTE: if your language has an external scanner, add it here.
],
"cflags_c": [
"-std=c11",
],
}
]
}
0707010000000C000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000002C00000000tree-sitter-tcl-0+20241105.98015eb/bindings0707010000000D000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000002E00000000tree-sitter-tcl-0+20241105.98015eb/bindings/c0707010000000E000081A4000000000000000000000001672A2240000000EA000000000000000000000000000000000000004000000000tree-sitter-tcl-0+20241105.98015eb/bindings/c/tree-sitter-tcl.h#ifndef TREE_SITTER_TCL_H_
#define TREE_SITTER_TCL_H_
typedef struct TSLanguage TSLanguage;
#ifdef __cplusplus
extern "C" {
#endif
const TSLanguage *tree_sitter_tcl(void);
#ifdef __cplusplus
}
#endif
#endif // TREE_SITTER_TCL_H_
0707010000000F000081A4000000000000000000000001672A2240000000F9000000000000000000000000000000000000004400000000tree-sitter-tcl-0+20241105.98015eb/bindings/c/tree-sitter-tcl.pc.inprefix=@PREFIX@
libdir=@LIBDIR@
includedir=@INCLUDEDIR@
Name: tree-sitter-tcl
Description: Tcl grammar for tree-sitter
URL: @URL@
Version: @VERSION@
Requires: @REQUIRES@
Libs: -L${libdir} @ADDITIONAL_LIBS@ -ltree-sitter-tcl
Cflags: -I${includedir}
07070100000010000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000002F00000000tree-sitter-tcl-0+20241105.98015eb/bindings/go07070100000011000081A4000000000000000000000001672A22400000013A000000000000000000000000000000000000003A00000000tree-sitter-tcl-0+20241105.98015eb/bindings/go/binding.gopackage tree_sitter_tcl
// #cgo CFLAGS: -std=c11 -fPIC
// #include "../../src/parser.c"
// // NOTE: if your language has an external scanner, add it here.
import "C"
import "unsafe"
// Get the tree-sitter Language for this grammar.
func Language() unsafe.Pointer {
return unsafe.Pointer(C.tree_sitter_tcl())
}
07070100000012000081A4000000000000000000000001672A22400000015D000000000000000000000000000000000000003F00000000tree-sitter-tcl-0+20241105.98015eb/bindings/go/binding_test.gopackage tree_sitter_tcl_test
import (
"testing"
tree_sitter "github.com/tree-sitter/go-tree-sitter"
tree_sitter_tcl "github.com/tree-sitter/tree-sitter-tcl/bindings/go"
)
func TestCanLoadGrammar(t *testing.T) {
language := tree_sitter.NewLanguage(tree_sitter_tcl.Language())
if language == nil {
t.Errorf("Error loading Tcl grammar")
}
}
07070100000013000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000003100000000tree-sitter-tcl-0+20241105.98015eb/bindings/node07070100000014000081A4000000000000000000000001672A22400000023B000000000000000000000000000000000000003C00000000tree-sitter-tcl-0+20241105.98015eb/bindings/node/binding.cc#include <napi.h>
typedef struct TSLanguage TSLanguage;
extern "C" TSLanguage *tree_sitter_tcl();
// "tree-sitter", "language" hashed with BLAKE2
const napi_type_tag LANGUAGE_TYPE_TAG = {
0x8AF2E5212AD58ABF, 0xD5006CAD83ABBA16
};
Napi::Object Init(Napi::Env env, Napi::Object exports) {
exports["name"] = Napi::String::New(env, "tcl");
auto language = Napi::External<TSLanguage>::New(env, tree_sitter_tcl());
language.TypeTag(&LANGUAGE_TYPE_TAG);
exports["language"] = language;
return exports;
}
NODE_API_MODULE(tree_sitter_tcl_binding, Init)
07070100000015000081A4000000000000000000000001672A224000000104000000000000000000000000000000000000004100000000tree-sitter-tcl-0+20241105.98015eb/bindings/node/binding_test.js/// <reference types="node" />
const assert = require("node:assert");
const { test } = require("node:test");
test("can load grammar", () => {
const parser = new (require("tree-sitter"))();
assert.doesNotThrow(() => parser.setLanguage(require(".")));
});
07070100000016000081A4000000000000000000000001672A2240000001C4000000000000000000000000000000000000003C00000000tree-sitter-tcl-0+20241105.98015eb/bindings/node/index.d.tstype BaseNode = {
type: string;
named: boolean;
};
type ChildNode = {
multiple: boolean;
required: boolean;
types: BaseNode[];
};
type NodeInfo =
| (BaseNode & {
subtypes: BaseNode[];
})
| (BaseNode & {
fields: { [name: string]: ChildNode };
children: ChildNode[];
});
type Language = {
name: string;
language: unknown;
nodeTypeInfo: NodeInfo[];
};
declare const language: Language;
export = language;
07070100000017000081A4000000000000000000000001672A2240000000C9000000000000000000000000000000000000003A00000000tree-sitter-tcl-0+20241105.98015eb/bindings/node/index.jsconst root = require("path").join(__dirname, "..", "..");
module.exports = require("node-gyp-build")(root);
try {
module.exports.nodeTypeInfo = require("../../src/node-types.json");
} catch (_) {}
07070100000018000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000003300000000tree-sitter-tcl-0+20241105.98015eb/bindings/python07070100000019000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000003900000000tree-sitter-tcl-0+20241105.98015eb/bindings/python/tests0707010000001A000081A4000000000000000000000001672A22400000011F000000000000000000000000000000000000004900000000tree-sitter-tcl-0+20241105.98015eb/bindings/python/tests/test_binding.pyfrom unittest import TestCase
import tree_sitter, tree_sitter_tcl
class TestLanguage(TestCase):
def test_can_load_grammar(self):
try:
tree_sitter.Language(tree_sitter_tcl.language())
except Exception:
self.fail("Error loading Tcl grammar")
0707010000001B000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000004300000000tree-sitter-tcl-0+20241105.98015eb/bindings/python/tree_sitter_tcl0707010000001C000081A4000000000000000000000001672A224000000056000000000000000000000000000000000000004F00000000tree-sitter-tcl-0+20241105.98015eb/bindings/python/tree_sitter_tcl/__init__.py"Tcl grammar for tree-sitter"
from ._binding import language
__all__ = ["language"]
0707010000001D000081A4000000000000000000000001672A22400000001B000000000000000000000000000000000000005000000000tree-sitter-tcl-0+20241105.98015eb/bindings/python/tree_sitter_tcl/__init__.pyidef language() -> int: ...
0707010000001E000081A4000000000000000000000001672A2240000002A5000000000000000000000000000000000000004D00000000tree-sitter-tcl-0+20241105.98015eb/bindings/python/tree_sitter_tcl/binding.c#include <Python.h>
typedef struct TSLanguage TSLanguage;
TSLanguage *tree_sitter_tcl(void);
static PyObject* _binding_language(PyObject *Py_UNUSED(self), PyObject *Py_UNUSED(args)) {
return PyCapsule_New(tree_sitter_tcl(), "tree_sitter.Language", NULL);
}
static PyMethodDef methods[] = {
{"language", _binding_language, METH_NOARGS,
"Get the tree-sitter language for this grammar."},
{NULL, NULL, 0, NULL}
};
static struct PyModuleDef module = {
.m_base = PyModuleDef_HEAD_INIT,
.m_name = "_binding",
.m_doc = NULL,
.m_size = -1,
.m_methods = methods
};
PyMODINIT_FUNC PyInit__binding(void) {
return PyModule_Create(&module);
}
0707010000001F000081A4000000000000000000000001672A224000000000000000000000000000000000000000000000004C00000000tree-sitter-tcl-0+20241105.98015eb/bindings/python/tree_sitter_tcl/py.typed07070100000020000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000003100000000tree-sitter-tcl-0+20241105.98015eb/bindings/rust07070100000021000081A4000000000000000000000001672A224000000557000000000000000000000000000000000000003A00000000tree-sitter-tcl-0+20241105.98015eb/bindings/rust/build.rsfn main() {
let src_dir = std::path::Path::new("src");
let mut c_config = cc::Build::new();
c_config.include(&src_dir);
c_config
.flag_if_supported("-Wno-unused-parameter")
.flag_if_supported("-Wno-unused-but-set-variable")
.flag_if_supported("-Wno-trigraphs");
#[cfg(target_env = "msvc")]
c_config.flag("-utf-8");
let parser_path = src_dir.join("parser.c");
c_config.file(&parser_path);
// If your language uses an external scanner written in C,
// then include this block of code:
let scanner_path = src_dir.join("scanner.c");
c_config.file(&scanner_path);
println!("cargo:rerun-if-changed={}", scanner_path.to_str().unwrap());
c_config.compile("parser");
println!("cargo:rerun-if-changed={}", parser_path.to_str().unwrap());
// If your language uses an external scanner written in C++,
// then include this block of code:
/*
let mut cpp_config = cc::Build::new();
cpp_config.cpp(true);
cpp_config.include(&src_dir);
cpp_config
.flag_if_supported("-Wno-unused-parameter")
.flag_if_supported("-Wno-unused-but-set-variable");
let scanner_path = src_dir.join("scanner.cc");
cpp_config.file(&scanner_path);
cpp_config.compile("scanner");
println!("cargo:rerun-if-changed={}", scanner_path.to_str().unwrap());
*/
}
07070100000022000081A4000000000000000000000001672A22400000079D000000000000000000000000000000000000003800000000tree-sitter-tcl-0+20241105.98015eb/bindings/rust/lib.rs//! This crate provides Tcl language support for the [tree-sitter][] parsing library.
//!
//! Typically, you will use the [language][language func] function to add this language to a
//! tree-sitter [Parser][], and then use the parser to parse some code:
//!
//! ```
//! let code = r#"
//! "#;
//! let mut parser = tree_sitter::Parser::new();
//! let language = tree_sitter_tcl::LANGUAGE;
//! parser
//! .set_language(&language.into())
//! .expect("Error loading Tcl parser");
//! let tree = parser.parse(code, None).unwrap();
//! assert!(!tree.root_node().has_error());
//! ```
//!
//! [Language]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Language.html
//! [language func]: fn.language.html
//! [Parser]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Parser.html
//! [tree-sitter]: https://tree-sitter.github.io/
use tree_sitter_language::LanguageFn;
extern "C" {
fn tree_sitter_tcl() -> *const ();
}
/// The tree-sitter [`LanguageFn`] for this grammar.
pub const LANGUAGE: LanguageFn = unsafe { LanguageFn::from_raw(tree_sitter_tcl) };
/// The content of the [`node-types.json`][] file for this grammar.
///
/// [`node-types.json`]: https://tree-sitter.github.io/tree-sitter/using-parsers#static-node-types
pub const NODE_TYPES: &str = include_str!("../../src/node-types.json");
// NOTE: uncomment these to include any queries that this grammar contains:
// pub const HIGHLIGHTS_QUERY: &str = include_str!("../../queries/highlights.scm");
// pub const INJECTIONS_QUERY: &str = include_str!("../../queries/injections.scm");
// pub const LOCALS_QUERY: &str = include_str!("../../queries/locals.scm");
// pub const TAGS_QUERY: &str = include_str!("../../queries/tags.scm");
#[cfg(test)]
mod tests {
#[test]
fn test_can_load_grammar() {
let mut parser = tree_sitter::Parser::new();
parser
.set_language(&super::LANGUAGE.into())
.expect("Error loading Tcl parser");
}
}
07070100000023000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000003200000000tree-sitter-tcl-0+20241105.98015eb/bindings/swift07070100000024000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000004000000000tree-sitter-tcl-0+20241105.98015eb/bindings/swift/TreeSitterTcl07070100000025000081A4000000000000000000000001672A2240000000EA000000000000000000000000000000000000004600000000tree-sitter-tcl-0+20241105.98015eb/bindings/swift/TreeSitterTcl/tcl.h#ifndef TREE_SITTER_TCL_H_
#define TREE_SITTER_TCL_H_
typedef struct TSLanguage TSLanguage;
#ifdef __cplusplus
extern "C" {
#endif
const TSLanguage *tree_sitter_tcl(void);
#ifdef __cplusplus
}
#endif
#endif // TREE_SITTER_TCL_H_
07070100000026000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000004500000000tree-sitter-tcl-0+20241105.98015eb/bindings/swift/TreeSitterTclTests07070100000027000081A4000000000000000000000001672A224000000163000000000000000000000000000000000000005E00000000tree-sitter-tcl-0+20241105.98015eb/bindings/swift/TreeSitterTclTests/TreeSitterTclTests.swiftimport XCTest
import SwiftTreeSitter
import TreeSitterTcl
final class TreeSitterTclTests: XCTestCase {
func testCanLoadGrammar() throws {
let parser = Parser()
let language = Language(language: tree_sitter_tcl())
XCTAssertNoThrow(try parser.setLanguage(language),
"Error loading Tcl grammar")
}
}
07070100000028000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000002C00000000tree-sitter-tcl-0+20241105.98015eb/ftplugin07070100000029000081A4000000000000000000000001672A224000000017000000000000000000000000000000000000003400000000tree-sitter-tcl-0+20241105.98015eb/ftplugin/tcl.luavim.treesitter.start()
0707010000002A000081A4000000000000000000000001672A22400000006C000000000000000000000000000000000000002A00000000tree-sitter-tcl-0+20241105.98015eb/go.modmodule github.com/tree-sitter/tree-sitter-tcl
go 1.23
require github.com/tree-sitter/go-tree-sitter v0.23
0707010000002B000081A4000000000000000000000001672A224000001F9E000000000000000000000000000000000000002E00000000tree-sitter-tcl-0+20241105.98015eb/grammar.js// Taken from the expr man page
const PREC = {
unary : 150, // - + ~ !
exp : 140, // **
muldiv : 130, // * / %
addsub : 120, // + -
shift : 110, // << >>
compare : 100, // > < >= <=
equal_bool : 90, // == !=
equal_string : 80, // eq ne
contain : 70, // in ni
and_bit : 60, // &
xor_bit : 50, // ^
or_bit : 40, // |
and_logical : 30, // &&
or_logical : 20, // ||
ternary : 10, // x ? y : z
}
const interleaved1 = (rule, delim) => seq(rule, repeat(seq(delim, rule)))
module.exports = grammar({
name: 'tcl',
word: $ => $.simple_word,
externals: $ => [
$._concat,
$._immediate,
],
inline: $ => [
$._builtin,
$._terminator,
$._word,
],
extras: $ => [
/\s+/,
/\\\r?\n/
],
rules: {
source_file: $ => repeat(seq(
optional($._command),
$._terminator
)),
_terminator: _ => choice('\n', ';'),
comment: _ => /#[^\n]*/,
_builtin: $ => choice(
$.conditional,
$.global,
$.namespace,
$.procedure,
$.set,
$.try,
$.foreach,
$.expr_cmd,
$.while,
$.catch,
$.regexp,
),
// regexp ?switches? exp string ?matchVar? ?subMatchVar subMatchVar ...?
regexp: $ => seq(
'regexp',
$._word_simple, // exp
$._concat_word, // string
repeat($._concat_word),
),
while: $ => seq('while', $.expr, $._word),
expr_cmd: $ => seq('expr', $.expr),
foreach: $ => seq("foreach", $.arguments, $._word_simple, $._word),
global: $ => seq("global", repeat($._concat_word)),
namespace: $ => seq('namespace', $.word_list),
try: $ => seq(
"try",
$._word,
optional(seq(
"on",
"error",
$.arguments,
$._word,
)),
optional($.finally)
),
finally: $=> seq('finally', $._word),
_command: $ => choice(
$._builtin,
$.comment,
$.command
),
command: $ => seq(
field('name', $._word),
optional(field('arguments', $.word_list))
),
word_list: $ => repeat1($._word),
unpack: _ => '{*}',
_word: $ => seq(
optional($.unpack),
choice(
$.braced_word,
$._concat_word,
)
),
_word_simple: $ => interleaved1(
choice(
$.escaped_character,
$.command_substitution,
$.simple_word,
$.quoted_word,
$.variable_substitution,
$.braced_word_simple,
),
$._concat,
),
_concat_word: $ => interleaved1(
choice(
$.escaped_character,
$.command_substitution,
seq($.simple_word, optional($.array_index)),
$.quoted_word,
$.variable_substitution,
),
$._concat,
),
_ns_delim: _ => token.immediate("::"),
_ident_imm: _ => token.immediate(/[a-zA-Z_][a-zA-Z0-9_]*/),
_ident: _ => /[a-zA-Z_][a-zA-Z0-9_]*/,
_id_immediate: $ => seq(
optional($._ns_delim), $._ident_imm,
repeat(seq($._ns_delim, $._ident_imm))
),
id: $ => seq(
choice(seq("::", $._ident_imm), $._ident),
repeat(seq($._ns_delim, $._ident_imm))
),
array_index: $ => seq(token.immediate('('), $._word_simple, ')'),
variable_substitution: $ => seq(
choice(
seq('$', alias($._id_immediate, $.id)),
seq('$', '{', /[^}]+/, '}'),
),
optional($.array_index)
),
braced_word: $ => seq('{', optional(seq(
interleaved1($._command, repeat1($._terminator)),
repeat($._terminator)
)), '}'),
braced_word_simple: $ => seq('{', repeat($._word_simple), '}'),
set: $ => seq(
"set",
choice(
seq($.id, optional($.array_index)),
seq('$', '{', /[^}]+/, '}'),
),
optional($._word_simple)
),
procedure: $ => seq(
"proc",
field('name', $._word),
field('arguments', $.arguments),
field('body', $._word)
),
_argument_word: $ => choice($.simple_word, $.quoted_word, $.braced_word),
argument: $ => choice(
field('name', $.simple_word),
seq(
'{',
field('name', $.simple_word),
optional(field('default', $._argument_word)),
'}'
)
),
arguments: $ => choice(
seq('{', repeat($.argument) , '}'),
$.simple_word,
),
_number: $ => /[0-9]+(\.[0-9]+)?([eE][+-]?[0-9]+)?/,
_boolean: $ => token(choice(
"1", "0",
/[Tt][Rr][Uu][Ee]/,
/[Ff][Aa][Ll][Ss][Ee]/
)),
_expr_atom_no_brace: $ => choice(
// As a numeric value, either integer or floating-point.
$._number,
// As a boolean value, using any form understood by string is boolean.
$._boolean,
// As a mathematical function whose arguments have any of the above
// forms for operands, such as sin($x). See MATH FUNCTIONS below for a
// discussion of how mathematical functions are handled.
seq($.simple_word, "(", $._expr, ")"),
// As a Tcl command enclosed in brackets. The command will be executed
// and its result will be used as the operand.
$.command_substitution,
// As a string enclosed in double-quotes. The expression parser will
// perform backslash, variable, and command substitutions on the
// information between the quotes, and use the resulting value as the
// operand
$.quoted_word,
// As a Tcl variable, using standard $ notation. The variable's value
// will be used as the operand.
$.variable_substitution,
),
_expr: $ => choice(
$.unary_expr,
$.binop_expr,
$.ternary_expr,
$.escaped_character,
seq("(", $._expr, ")"),
$._expr_atom_no_brace,
// As a string enclosed in braces. The characters between the open
// brace and matching close brace will be used as the operand without
// any substitutions.
$.braced_word_simple,
),
expr: $ => choice(
seq('{', $._expr, '}'),
$._expr_atom_no_brace,
),
unary_expr: $ => prec.left(PREC.unary, seq(choice("-", "+", "~", "!"), $._expr)),
binop_expr: $ => choice(
prec.left(PREC.exp, seq($._expr, "**", $._expr)),
prec.left(PREC.muldiv, seq($._expr, choice("/", "*", "%"), $._expr)),
prec.left(PREC.addsub, seq($._expr, choice("+", "-"), $._expr)),
prec.left(PREC.shift, seq($._expr, choice("<<", ">>"), $._expr)),
prec.left(PREC.compare, seq($._expr, choice(">", "<", ">=", "<="), $._expr)),
prec.left(PREC.equal_bool, seq($._expr, choice("==", "!="), $._expr)),
prec.left(PREC.equal_string, seq($._expr, choice("eq", "ne"), $._expr)),
prec.left(PREC.contain, seq($._expr, choice("in", "ni"), $._expr)),
prec.left(PREC.and_bit, seq($._expr, "&", $._expr)),
prec.left(PREC.xor_bit, seq($._expr, "^", $._expr)),
prec.left(PREC.or_bit, seq($._expr, "|", $._expr)),
prec.left(PREC.and_logical, seq($._expr, "&&", $._expr)),
prec.left(PREC.or_logical, seq($._expr, "||", $._expr)),
),
ternary_expr: $ => prec.left(PREC.ternary, seq($._expr, '?', $._expr, ':', $._expr)),
elseif: $ => seq(
"elseif",
field('condition', $.expr),
$._word,
),
else: $ => seq(
"else",
$._word,
),
conditional: $ => seq(
"if",
field('condition', $.expr),
$._word,
repeat($.elseif),
optional($.else),
),
// catch script ?varName?
catch: $ => seq(
"catch",
$._word,
optional($._concat_word),
),
quoted_word: $ => seq(
'"',
repeat(choice(
$.variable_substitution,
$._quoted_word_content,
$.command_substitution,
$.escaped_character,
)),
'"',
),
escaped_character: _ => /\\./,
_quoted_word_content: _ => token(prec(-1, /[^$\\\[\]"]+/)),
command_substitution: $ => seq('[', $._command, ']'),
simple_word: _ => /[^!$\s\\\[\]{}();"]+/,
}
});
0707010000002C000081A4000000000000000000000001672A22400000A451000000000000000000000000000000000000003500000000tree-sitter-tcl-0+20241105.98015eb/package-lock.json{
"name": "tree-sitter-tcl",
"version": "1.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "tree-sitter-tcl",
"version": "1.0.0",
"license": "MIT",
"dependencies": {
"nan": "^2.18.0"
},
"devDependencies": {
"eslint": "^8.56.0",
"eslint-config-google": "^0.14.0",
"tree-sitter-cli": "^0.21.0"
}
},
"node_modules/@aashutoshrathi/word-wrap": {
"version": "1.2.6",
"resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz",
"integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/@eslint-community/eslint-utils": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
"integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
"dev": true,
"dependencies": {
"eslint-visitor-keys": "^3.3.0"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"peerDependencies": {
"eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
}
},
"node_modules/@eslint-community/regexpp": {
"version": "4.10.0",
"resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz",
"integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==",
"dev": true,
"engines": {
"node": "^12.0.0 || ^14.0.0 || >=16.0.0"
}
},
"node_modules/@eslint/eslintrc": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
"integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
"dev": true,
"dependencies": {
"ajv": "^6.12.4",
"debug": "^4.3.2",
"espree": "^9.6.0",
"globals": "^13.19.0",
"ignore": "^5.2.0",
"import-fresh": "^3.2.1",
"js-yaml": "^4.1.0",
"minimatch": "^3.1.2",
"strip-json-comments": "^3.1.1"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
"node_modules/@eslint/js": {
"version": "8.57.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
"integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
}
},
"node_modules/@humanwhocodes/config-array": {
"version": "0.11.14",
"resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
"integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
"dev": true,
"dependencies": {
"@humanwhocodes/object-schema": "^2.0.2",
"debug": "^4.3.1",
"minimatch": "^3.0.5"
},
"engines": {
"node": ">=10.10.0"
}
},
"node_modules/@humanwhocodes/module-importer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
"integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
"dev": true,
"engines": {
"node": ">=12.22"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/nzakas"
}
},
"node_modules/@humanwhocodes/object-schema": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz",
"integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==",
"dev": true
},
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
"dev": true,
"dependencies": {
"@nodelib/fs.stat": "2.0.5",
"run-parallel": "^1.1.9"
},
"engines": {
"node": ">= 8"
}
},
"node_modules/@nodelib/fs.stat": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
"dev": true,
"engines": {
"node": ">= 8"
}
},
"node_modules/@nodelib/fs.walk": {
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
"dev": true,
"dependencies": {
"@nodelib/fs.scandir": "2.1.5",
"fastq": "^1.6.0"
},
"engines": {
"node": ">= 8"
}
},
"node_modules/@ungap/structured-clone": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
"integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==",
"dev": true
},
"node_modules/acorn": {
"version": "8.11.3",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz",
"integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==",
"dev": true,
"bin": {
"acorn": "bin/acorn"
},
"engines": {
"node": ">=0.4.0"
}
},
"node_modules/acorn-jsx": {
"version": "5.3.2",
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
"integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
"dev": true,
"peerDependencies": {
"acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
}
},
"node_modules/ajv": {
"version": "6.12.6",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
"dev": true,
"dependencies": {
"fast-deep-equal": "^3.1.1",
"fast-json-stable-stringify": "^2.0.0",
"json-schema-traverse": "^0.4.1",
"uri-js": "^4.2.2"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/epoberezkin"
}
},
"node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
"dependencies": {
"color-convert": "^2.0.1"
},
"engines": {
"node": ">=8"
},
"funding": {
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
"node_modules/argparse": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
},
"node_modules/balanced-match": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
"dev": true
},
"node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
"dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
"node_modules/callsites": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
"integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
"dev": true,
"engines": {
"node": ">=6"
}
},
"node_modules/chalk": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
"integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
"dependencies": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
},
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/chalk/chalk?sponsor=1"
}
},
"node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"dependencies": {
"color-name": "~1.1.4"
},
"engines": {
"node": ">=7.0.0"
}
},
"node_modules/color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
"node_modules/concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
"dev": true
},
"node_modules/cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
"integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
"dev": true,
"dependencies": {
"path-key": "^3.1.0",
"shebang-command": "^2.0.0",
"which": "^2.0.1"
},
"engines": {
"node": ">= 8"
}
},
"node_modules/debug": {
"version": "4.3.4",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
"integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"dev": true,
"dependencies": {
"ms": "2.1.2"
},
"engines": {
"node": ">=6.0"
},
"peerDependenciesMeta": {
"supports-color": {
"optional": true
}
}
},
"node_modules/deep-is": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
"dev": true
},
"node_modules/doctrine": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
"integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
"dev": true,
"dependencies": {
"esutils": "^2.0.2"
},
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/escape-string-regexp": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
"integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
"dev": true,
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/eslint": {
"version": "8.57.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz",
"integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.6.1",
"@eslint/eslintrc": "^2.1.4",
"@eslint/js": "8.57.0",
"@humanwhocodes/config-array": "^0.11.14",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
"@ungap/structured-clone": "^1.2.0",
"ajv": "^6.12.4",
"chalk": "^4.0.0",
"cross-spawn": "^7.0.2",
"debug": "^4.3.2",
"doctrine": "^3.0.0",
"escape-string-regexp": "^4.0.0",
"eslint-scope": "^7.2.2",
"eslint-visitor-keys": "^3.4.3",
"espree": "^9.6.1",
"esquery": "^1.4.2",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
"file-entry-cache": "^6.0.1",
"find-up": "^5.0.0",
"glob-parent": "^6.0.2",
"globals": "^13.19.0",
"graphemer": "^1.4.0",
"ignore": "^5.2.0",
"imurmurhash": "^0.1.4",
"is-glob": "^4.0.0",
"is-path-inside": "^3.0.3",
"js-yaml": "^4.1.0",
"json-stable-stringify-without-jsonify": "^1.0.1",
"levn": "^0.4.1",
"lodash.merge": "^4.6.2",
"minimatch": "^3.1.2",
"natural-compare": "^1.4.0",
"optionator": "^0.9.3",
"strip-ansi": "^6.0.1",
"text-table": "^0.2.0"
},
"bin": {
"eslint": "bin/eslint.js"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
"node_modules/eslint-config-google": {
"version": "0.14.0",
"resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz",
"integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==",
"dev": true,
"engines": {
"node": ">=0.10.0"
},
"peerDependencies": {
"eslint": ">=5.16.0"
}
},
"node_modules/eslint-scope": {
"version": "7.2.2",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
"integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
"dev": true,
"dependencies": {
"esrecurse": "^4.3.0",
"estraverse": "^5.2.0"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
"node_modules/eslint-visitor-keys": {
"version": "3.4.3",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
"integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
"node_modules/espree": {
"version": "9.6.1",
"resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
"integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
"dev": true,
"dependencies": {
"acorn": "^8.9.0",
"acorn-jsx": "^5.3.2",
"eslint-visitor-keys": "^3.4.1"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
"node_modules/esquery": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
"integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
"dev": true,
"dependencies": {
"estraverse": "^5.1.0"
},
"engines": {
"node": ">=0.10"
}
},
"node_modules/esrecurse": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
"integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
"dev": true,
"dependencies": {
"estraverse": "^5.2.0"
},
"engines": {
"node": ">=4.0"
}
},
"node_modules/estraverse": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
"integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
"dev": true,
"engines": {
"node": ">=4.0"
}
},
"node_modules/esutils": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
"integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/fast-deep-equal": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
"dev": true
},
"node_modules/fast-json-stable-stringify": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
"integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
"dev": true
},
"node_modules/fast-levenshtein": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
"integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
"dev": true
},
"node_modules/fastq": {
"version": "1.17.1",
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz",
"integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==",
"dev": true,
"dependencies": {
"reusify": "^1.0.4"
}
},
"node_modules/file-entry-cache": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
"integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
"dev": true,
"dependencies": {
"flat-cache": "^3.0.4"
},
"engines": {
"node": "^10.12.0 || >=12.0.0"
}
},
"node_modules/find-up": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
"integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
"dev": true,
"dependencies": {
"locate-path": "^6.0.0",
"path-exists": "^4.0.0"
},
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/flat-cache": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz",
"integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==",
"dev": true,
"dependencies": {
"flatted": "^3.2.9",
"keyv": "^4.5.3",
"rimraf": "^3.0.2"
},
"engines": {
"node": "^10.12.0 || >=12.0.0"
}
},
"node_modules/flatted": {
"version": "3.3.1",
"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz",
"integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==",
"dev": true
},
"node_modules/fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
"dev": true
},
"node_modules/glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
"dev": true,
"dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^3.1.1",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
},
"engines": {
"node": "*"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/glob-parent": {
"version": "6.0.2",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
"integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
"dev": true,
"dependencies": {
"is-glob": "^4.0.3"
},
"engines": {
"node": ">=10.13.0"
}
},
"node_modules/globals": {
"version": "13.24.0",
"resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
"integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
"dev": true,
"dependencies": {
"type-fest": "^0.20.2"
},
"engines": {
"node": ">=8"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/graphemer": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
"integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
"dev": true
},
"node_modules/has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/ignore": {
"version": "5.3.1",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz",
"integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==",
"dev": true,
"engines": {
"node": ">= 4"
}
},
"node_modules/import-fresh": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
"integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
"dev": true,
"dependencies": {
"parent-module": "^1.0.0",
"resolve-from": "^4.0.0"
},
"engines": {
"node": ">=6"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/imurmurhash": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
"integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
"dev": true,
"engines": {
"node": ">=0.8.19"
}
},
"node_modules/inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
"dev": true,
"dependencies": {
"once": "^1.3.0",
"wrappy": "1"
}
},
"node_modules/inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
"dev": true
},
"node_modules/is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/is-glob": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
"dev": true,
"dependencies": {
"is-extglob": "^2.1.1"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/is-path-inside": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
"integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
"dev": true
},
"node_modules/js-yaml": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
"integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
"dev": true,
"dependencies": {
"argparse": "^2.0.1"
},
"bin": {
"js-yaml": "bin/js-yaml.js"
}
},
"node_modules/json-buffer": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
"integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
"dev": true
},
"node_modules/json-schema-traverse": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
"dev": true
},
"node_modules/json-stable-stringify-without-jsonify": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
"integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
"dev": true
},
"node_modules/keyv": {
"version": "4.5.4",
"resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
"integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
"dev": true,
"dependencies": {
"json-buffer": "3.0.1"
}
},
"node_modules/levn": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
"integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
"dev": true,
"dependencies": {
"prelude-ls": "^1.2.1",
"type-check": "~0.4.0"
},
"engines": {
"node": ">= 0.8.0"
}
},
"node_modules/locate-path": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
"integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
"dev": true,
"dependencies": {
"p-locate": "^5.0.0"
},
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/lodash.merge": {
"version": "4.6.2",
"resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
"dev": true
},
"node_modules/minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
},
"engines": {
"node": "*"
}
},
"node_modules/ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
"dev": true
},
"node_modules/nan": {
"version": "2.18.0",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.18.0.tgz",
"integrity": "sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w=="
},
"node_modules/natural-compare": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
"dev": true
},
"node_modules/once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
"dev": true,
"dependencies": {
"wrappy": "1"
}
},
"node_modules/optionator": {
"version": "0.9.3",
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz",
"integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==",
"dev": true,
"dependencies": {
"@aashutoshrathi/word-wrap": "^1.2.3",
"deep-is": "^0.1.3",
"fast-levenshtein": "^2.0.6",
"levn": "^0.4.1",
"prelude-ls": "^1.2.1",
"type-check": "^0.4.0"
},
"engines": {
"node": ">= 0.8.0"
}
},
"node_modules/p-limit": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
"integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
"dev": true,
"dependencies": {
"yocto-queue": "^0.1.0"
},
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/p-locate": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
"integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
"dev": true,
"dependencies": {
"p-limit": "^3.0.2"
},
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/parent-module": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
"integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
"dev": true,
"dependencies": {
"callsites": "^3.0.0"
},
"engines": {
"node": ">=6"
}
},
"node_modules/path-exists": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
"integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/path-key": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
"integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/prelude-ls": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
"integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
"dev": true,
"engines": {
"node": ">= 0.8.0"
}
},
"node_modules/punycode": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
"integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
"dev": true,
"engines": {
"node": ">=6"
}
},
"node_modules/queue-microtask": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/feross"
},
{
"type": "patreon",
"url": "https://www.patreon.com/feross"
},
{
"type": "consulting",
"url": "https://feross.org/support"
}
]
},
"node_modules/resolve-from": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
"dev": true,
"engines": {
"node": ">=4"
}
},
"node_modules/reusify": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
"dev": true,
"engines": {
"iojs": ">=1.0.0",
"node": ">=0.10.0"
}
},
"node_modules/rimraf": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
"dev": true,
"dependencies": {
"glob": "^7.1.3"
},
"bin": {
"rimraf": "bin.js"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/run-parallel": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/feross"
},
{
"type": "patreon",
"url": "https://www.patreon.com/feross"
},
{
"type": "consulting",
"url": "https://feross.org/support"
}
],
"dependencies": {
"queue-microtask": "^1.2.2"
}
},
"node_modules/shebang-command": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
"integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
"dev": true,
"dependencies": {
"shebang-regex": "^3.0.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/shebang-regex": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/strip-ansi": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dev": true,
"dependencies": {
"ansi-regex": "^5.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/strip-json-comments": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
"integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
"dev": true,
"engines": {
"node": ">=8"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"dependencies": {
"has-flag": "^4.0.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
"integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
"dev": true
},
"node_modules/tree-sitter-cli": {
"version": "0.21.0",
"resolved": "https://registry.npmjs.org/tree-sitter-cli/-/tree-sitter-cli-0.21.0.tgz",
"integrity": "sha512-wA7wT5724fNQW82XDH6zT6ZcYonjrAKLCHHuhLsPcAKULrhp3rNuMvlgBdB5FUBvmjHNhtTZF/qpHenMoRJPBw==",
"dev": true,
"hasInstallScript": true,
"bin": {
"tree-sitter": "cli.js"
}
},
"node_modules/type-check": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
"integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
"dev": true,
"dependencies": {
"prelude-ls": "^1.2.1"
},
"engines": {
"node": ">= 0.8.0"
}
},
"node_modules/type-fest": {
"version": "0.20.2",
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
"integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
"dev": true,
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/uri-js": {
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
"dev": true,
"dependencies": {
"punycode": "^2.1.0"
}
},
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
"dev": true,
"dependencies": {
"isexe": "^2.0.0"
},
"bin": {
"node-which": "bin/node-which"
},
"engines": {
"node": ">= 8"
}
},
"node_modules/wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"dev": true
},
"node_modules/yocto-queue": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
"integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
"dev": true,
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
}
}
}
0707010000002D000081A4000000000000000000000001672A22400000048B000000000000000000000000000000000000003000000000tree-sitter-tcl-0+20241105.98015eb/package.json{
"name": "tree-sitter-tcl",
"version": "1.0.0",
"description": "Treesitter parser for TCL",
"main": "bindings/node",
"types": "bindings/node",
"keywords": [
"tree-sitter",
"parser",
"lexer",
"tcl"
],
"files": [
"grammar.js",
"binding.gyp",
"prebuilds/**",
"bindings/node/*",
"queries/*",
"src/**"
],
"repository": {
"type": "git",
"url": "https://github.com/tree-sitter-grammars/tree-sitter-tcl.git"
},
"scripts": {
"install": "node-gyp-build",
"prestart": "tree-sitter build --wasm",
"start": "tree-sitter playground",
"test": "node --test bindings/node/*_test.js",
"prebuildify": "prebuildify --napi --strip"
},
"author": "Lewis Russell <lewis6991@gmail.com>",
"license": "MIT",
"dependencies": {
"node-addon-api": "^7.1.0",
"node-gyp-build": "^4.8.0"
},
"peerDependencies": {
"tree-sitter": "^0.21.0"
},
"peerDependenciesMeta": {
"tree_sitter": {
"optional": true
}
},
"devDependencies": {
"eslint": "^8.56.0",
"eslint-config-google": "^0.14.0",
"tree-sitter-cli": "^0.21.0",
"prebuildify": "^6.0.0"
}
}0707010000002E000081A4000000000000000000000001672A2240000002DC000000000000000000000000000000000000003200000000tree-sitter-tcl-0+20241105.98015eb/pyproject.toml[build-system]
requires = ["setuptools>=42", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "tree-sitter-tcl"
description = "Tcl grammar for tree-sitter"
version = "0.0.1"
keywords = ["incremental", "parsing", "tree-sitter", "tcl"]
classifiers = [
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Topic :: Software Development :: Compilers",
"Topic :: Text Processing :: Linguistic",
"Typing :: Typed"
]
requires-python = ">=3.8"
license.text = "MIT"
readme = "README.md"
[project.urls]
Homepage = "https://github.com/tree-sitter/tree-sitter-tcl"
[project.optional-dependencies]
core = ["tree-sitter~=0.21"]
[tool.cibuildwheel]
build = "cp38-*"
build-frontend = "build"
0707010000002F000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000002B00000000tree-sitter-tcl-0+20241105.98015eb/queries07070100000030000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000002F00000000tree-sitter-tcl-0+20241105.98015eb/queries/tcl07070100000031000081A4000000000000000000000001672A224000000014000000000000000000000000000000000000003900000000tree-sitter-tcl-0+20241105.98015eb/queries/tcl/folds.scm(braced_word) @fold
07070100000032000081A4000000000000000000000001672A224000000BB5000000000000000000000000000000000000003E00000000tree-sitter-tcl-0+20241105.98015eb/queries/tcl/highlights.scm
(comment) @comment @spell
(command name: (simple_word) @function)
"proc" @keyword.function
(procedure
name: (_) @variable
)
(set (simple_word) @variable)
(argument
name: (_) @variable.parameter
)
((simple_word) @variable.builtin
(#any-of? @variable.builtin
"argc"
"argv"
"argv0"
"auto_path"
"env"
"errorCode"
"errorInfo"
"tcl_interactive"
"tcl_library"
"tcl_nonwordchars"
"tcl_patchLevel"
"tcl_pkgPath"
"tcl_platform"
"tcl_precision"
"tcl_rcFileName"
"tcl_traceCompile"
"tcl_traceExec"
"tcl_wordchars"
"tcl_version"))
"expr" @function.builtin
(command
name: (simple_word) @function.builtin
(#any-of? @function.builtin
"cd"
"exec"
"exit"
"incr"
"info"
"join"
"puts"
"regexp"
"regsub"
"split"
"subst"
"trace"
"source"))
(command name: (simple_word) @keyword
(#any-of? @keyword
"append"
"break"
"catch"
"continue"
"default"
"dict"
"error"
"eval"
"global"
"lappend"
"lassign"
"lindex"
"linsert"
"list"
"llength"
"lmap"
"lrange"
"lrepeat"
"lreplace"
"lreverse"
"lsearch"
"lset"
"lsort"
"package"
"return"
"switch"
"throw"
"unset"
"variable"))
[
"error"
"namespace"
"on"
"set"
"try"
] @keyword
(unpack) @operator
[
"while"
"foreach"
; "for"
] @repeat
[
"if"
"else"
"elseif"
] @conditional
[
"**"
"/" "*" "%" "+" "-"
"<<" ">>"
">" "<" ">=" "<="
"==" "!="
"eq" "ne"
"in" "ni"
"&"
"^"
"|"
"&&"
"||"
] @operator
(variable_substitution) @variable
(quoted_word) @string
(escaped_character) @string.escape
[
"{" "}"
"[" "]"
";"
] @punctuation.delimiter
((simple_word) @number
(#lua-match? @number "^[0-9]+$"))
((simple_word) @boolean
(#any-of? @boolean "true" "false"))
; after apply array auto_execok auto_import auto_load auto_mkindex auto_qualify
; auto_reset bgerror binary chan clock close coroutine dde encoding eof fblocked
; fconfigure fcopy file fileevent filename flush format gets glob history http
; interp load mathfunc mathop memory msgcat my next nextto open parray pid
; pkg::create pkg_mkIndex platform platform::shell pwd re_syntax read refchan
; registry rename safe scan seek self socket source string tailcall tcl::prefix
; tcl_endOfWord tcl_findLibrary tcl_startOfNextWord tcl_startOfPreviousWord
; tcl_wordBreakAfter tcl_wordBreakBefore tcltest tell time timerate tm
; transchan unknown unload update uplevel upvar vwait yield yieldto zlib
07070100000033000081A4000000000000000000000001672A224000000152000000000000000000000000000000000000003B00000000tree-sitter-tcl-0+20241105.98015eb/queries/tcl/indents.scm[
(braced_word_simple)
(namespace)
(command)
(conditional)
(foreach)
(while)
(try)
(procedure)
(command_substitution)
] @indent.begin
(quoted_word) @indent.align
([
(expr)
(arguments)
] @indent.align
(#set! "indent.open_delimiter" "{")
(#set! "indent.close_delimiter" "}"))
[
"}"
"]"
] @indent.branch @indent.end
07070100000034000081A4000000000000000000000001672A224000000634000000000000000000000000000000000000002C00000000tree-sitter-tcl-0+20241105.98015eb/setup.pyfrom os.path import isdir, join
from platform import system
from setuptools import Extension, find_packages, setup
from setuptools.command.build import build
from wheel.bdist_wheel import bdist_wheel
class Build(build):
def run(self):
if isdir("queries"):
dest = join(self.build_lib, "tree_sitter_tcl", "queries")
self.copy_tree("queries", dest)
super().run()
class BdistWheel(bdist_wheel):
def get_tag(self):
python, abi, platform = super().get_tag()
if python.startswith("cp"):
python, abi = "cp38", "abi3"
return python, abi, platform
setup(
packages=find_packages("bindings/python"),
package_dir={"": "bindings/python"},
package_data={
"tree_sitter_tcl": ["*.pyi", "py.typed"],
"tree_sitter_tcl.queries": ["*.scm"],
},
ext_package="tree_sitter_tcl",
ext_modules=[
Extension(
name="_binding",
sources=[
"bindings/python/tree_sitter_tcl/binding.c",
"src/parser.c",
# NOTE: if your language uses an external scanner, add it here.
],
extra_compile_args=(
["-std=c11"] if system() != 'Windows' else []
),
define_macros=[
("Py_LIMITED_API", "0x03080000"),
("PY_SSIZE_T_CLEAN", None)
],
include_dirs=["src"],
py_limited_api=True,
)
],
cmdclass={
"build": Build,
"bdist_wheel": BdistWheel
},
zip_safe=False
)
07070100000035000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000002700000000tree-sitter-tcl-0+20241105.98015eb/src07070100000036000081A4000000000000000000000001672A2240000092C9000000000000000000000000000000000000003400000000tree-sitter-tcl-0+20241105.98015eb/src/grammar.json{
"$schema": "https://tree-sitter.github.io/tree-sitter/assets/schemas/grammar.schema.json",
"name": "tcl",
"word": "simple_word",
"rules": {
"source_file": {
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_command"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_terminator"
}
]
}
},
"_terminator": {
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "\n"
},
{
"type": "STRING",
"value": ";"
}
]
},
"comment": {
"type": "PATTERN",
"value": "#[^\\n]*"
},
"_builtin": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "conditional"
},
{
"type": "SYMBOL",
"name": "global"
},
{
"type": "SYMBOL",
"name": "namespace"
},
{
"type": "SYMBOL",
"name": "procedure"
},
{
"type": "SYMBOL",
"name": "set"
},
{
"type": "SYMBOL",
"name": "try"
},
{
"type": "SYMBOL",
"name": "foreach"
},
{
"type": "SYMBOL",
"name": "expr_cmd"
},
{
"type": "SYMBOL",
"name": "while"
},
{
"type": "SYMBOL",
"name": "catch"
},
{
"type": "SYMBOL",
"name": "regexp"
}
]
},
"regexp": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "regexp"
},
{
"type": "SYMBOL",
"name": "_word_simple"
},
{
"type": "SYMBOL",
"name": "_concat_word"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_concat_word"
}
}
]
},
"while": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "while"
},
{
"type": "SYMBOL",
"name": "expr"
},
{
"type": "SYMBOL",
"name": "_word"
}
]
},
"expr_cmd": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "expr"
},
{
"type": "SYMBOL",
"name": "expr"
}
]
},
"foreach": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "foreach"
},
{
"type": "SYMBOL",
"name": "arguments"
},
{
"type": "SYMBOL",
"name": "_word_simple"
},
{
"type": "SYMBOL",
"name": "_word"
}
]
},
"global": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "global"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_concat_word"
}
}
]
},
"namespace": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "namespace"
},
{
"type": "SYMBOL",
"name": "word_list"
}
]
},
"try": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "try"
},
{
"type": "SYMBOL",
"name": "_word"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "on"
},
{
"type": "STRING",
"value": "error"
},
{
"type": "SYMBOL",
"name": "arguments"
},
{
"type": "SYMBOL",
"name": "_word"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "finally"
},
{
"type": "BLANK"
}
]
}
]
},
"finally": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "finally"
},
{
"type": "SYMBOL",
"name": "_word"
}
]
},
"_command": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_builtin"
},
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "SYMBOL",
"name": "command"
}
]
},
"command": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_word"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "arguments",
"content": {
"type": "SYMBOL",
"name": "word_list"
}
},
{
"type": "BLANK"
}
]
}
]
},
"word_list": {
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_word"
}
},
"unpack": {
"type": "STRING",
"value": "{*}"
},
"_word": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "unpack"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "braced_word"
},
{
"type": "SYMBOL",
"name": "_concat_word"
}
]
}
]
},
"_word_simple": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "escaped_character"
},
{
"type": "SYMBOL",
"name": "command_substitution"
},
{
"type": "SYMBOL",
"name": "simple_word"
},
{
"type": "SYMBOL",
"name": "quoted_word"
},
{
"type": "SYMBOL",
"name": "variable_substitution"
},
{
"type": "SYMBOL",
"name": "braced_word_simple"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_concat"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "escaped_character"
},
{
"type": "SYMBOL",
"name": "command_substitution"
},
{
"type": "SYMBOL",
"name": "simple_word"
},
{
"type": "SYMBOL",
"name": "quoted_word"
},
{
"type": "SYMBOL",
"name": "variable_substitution"
},
{
"type": "SYMBOL",
"name": "braced_word_simple"
}
]
}
]
}
}
]
},
"_concat_word": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "escaped_character"
},
{
"type": "SYMBOL",
"name": "command_substitution"
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "simple_word"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "array_index"
},
{
"type": "BLANK"
}
]
}
]
},
{
"type": "SYMBOL",
"name": "quoted_word"
},
{
"type": "SYMBOL",
"name": "variable_substitution"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_concat"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "escaped_character"
},
{
"type": "SYMBOL",
"name": "command_substitution"
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "simple_word"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "array_index"
},
{
"type": "BLANK"
}
]
}
]
},
{
"type": "SYMBOL",
"name": "quoted_word"
},
{
"type": "SYMBOL",
"name": "variable_substitution"
}
]
}
]
}
}
]
},
"_ns_delim": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "::"
}
},
"_ident_imm": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "[a-zA-Z_][a-zA-Z0-9_]*"
}
},
"_ident": {
"type": "PATTERN",
"value": "[a-zA-Z_][a-zA-Z0-9_]*"
},
"_id_immediate": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_ns_delim"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_ident_imm"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_ns_delim"
},
{
"type": "SYMBOL",
"name": "_ident_imm"
}
]
}
}
]
},
"id": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "::"
},
{
"type": "SYMBOL",
"name": "_ident_imm"
}
]
},
{
"type": "SYMBOL",
"name": "_ident"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_ns_delim"
},
{
"type": "SYMBOL",
"name": "_ident_imm"
}
]
}
}
]
},
"array_index": {
"type": "SEQ",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "("
}
},
{
"type": "SYMBOL",
"name": "_word_simple"
},
{
"type": "STRING",
"value": ")"
}
]
},
"variable_substitution": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "$"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_id_immediate"
},
"named": true,
"value": "id"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "$"
},
{
"type": "STRING",
"value": "{"
},
{
"type": "PATTERN",
"value": "[^}]+"
},
{
"type": "STRING",
"value": "}"
}
]
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "array_index"
},
{
"type": "BLANK"
}
]
}
]
},
"braced_word": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_command"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_terminator"
}
},
{
"type": "SYMBOL",
"name": "_command"
}
]
}
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_terminator"
}
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "}"
}
]
},
"braced_word_simple": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_word_simple"
}
},
{
"type": "STRING",
"value": "}"
}
]
},
"set": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "set"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "id"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "array_index"
},
{
"type": "BLANK"
}
]
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "$"
},
{
"type": "STRING",
"value": "{"
},
{
"type": "PATTERN",
"value": "[^}]+"
},
{
"type": "STRING",
"value": "}"
}
]
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_word_simple"
},
{
"type": "BLANK"
}
]
}
]
},
"procedure": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "proc"
},
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_word"
}
},
{
"type": "FIELD",
"name": "arguments",
"content": {
"type": "SYMBOL",
"name": "arguments"
}
},
{
"type": "FIELD",
"name": "body",
"content": {
"type": "SYMBOL",
"name": "_word"
}
}
]
},
"_argument_word": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "simple_word"
},
{
"type": "SYMBOL",
"name": "quoted_word"
},
{
"type": "SYMBOL",
"name": "braced_word"
}
]
},
"argument": {
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "simple_word"
}
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "simple_word"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "default",
"content": {
"type": "SYMBOL",
"name": "_argument_word"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "}"
}
]
}
]
},
"arguments": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "argument"
}
},
{
"type": "STRING",
"value": "}"
}
]
},
{
"type": "SYMBOL",
"name": "simple_word"
}
]
},
"_number": {
"type": "PATTERN",
"value": "[0-9]+(\\.[0-9]+)?([eE][+-]?[0-9]+)?"
},
"_boolean": {
"type": "TOKEN",
"content": {
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "1"
},
{
"type": "STRING",
"value": "0"
},
{
"type": "PATTERN",
"value": "[Tt][Rr][Uu][Ee]"
},
{
"type": "PATTERN",
"value": "[Ff][Aa][Ll][Ss][Ee]"
}
]
}
},
"_expr_atom_no_brace": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_number"
},
{
"type": "SYMBOL",
"name": "_boolean"
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "simple_word"
},
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "SYMBOL",
"name": "command_substitution"
},
{
"type": "SYMBOL",
"name": "quoted_word"
},
{
"type": "SYMBOL",
"name": "variable_substitution"
}
]
},
"_expr": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "unary_expr"
},
{
"type": "SYMBOL",
"name": "binop_expr"
},
{
"type": "SYMBOL",
"name": "ternary_expr"
},
{
"type": "SYMBOL",
"name": "escaped_character"
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "SYMBOL",
"name": "_expr_atom_no_brace"
},
{
"type": "SYMBOL",
"name": "braced_word_simple"
}
]
},
"expr": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": "}"
}
]
},
{
"type": "SYMBOL",
"name": "_expr_atom_no_brace"
}
]
},
"unary_expr": {
"type": "PREC_LEFT",
"value": 150,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "-"
},
{
"type": "STRING",
"value": "+"
},
{
"type": "STRING",
"value": "~"
},
{
"type": "STRING",
"value": "!"
}
]
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
"binop_expr": {
"type": "CHOICE",
"members": [
{
"type": "PREC_LEFT",
"value": 140,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": "**"
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 130,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "/"
},
{
"type": "STRING",
"value": "*"
},
{
"type": "STRING",
"value": "%"
}
]
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 120,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "+"
},
{
"type": "STRING",
"value": "-"
}
]
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 110,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "<<"
},
{
"type": "STRING",
"value": ">>"
}
]
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 100,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": ">"
},
{
"type": "STRING",
"value": "<"
},
{
"type": "STRING",
"value": ">="
},
{
"type": "STRING",
"value": "<="
}
]
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 90,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "=="
},
{
"type": "STRING",
"value": "!="
}
]
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 80,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "eq"
},
{
"type": "STRING",
"value": "ne"
}
]
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 70,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "in"
},
{
"type": "STRING",
"value": "ni"
}
]
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 60,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": "&"
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 50,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": "^"
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 40,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": "|"
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 30,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": "&&"
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
{
"type": "PREC_LEFT",
"value": 20,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": "||"
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
}
]
},
"ternary_expr": {
"type": "PREC_LEFT",
"value": 10,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": "?"
},
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
"elseif": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "elseif"
},
{
"type": "FIELD",
"name": "condition",
"content": {
"type": "SYMBOL",
"name": "expr"
}
},
{
"type": "SYMBOL",
"name": "_word"
}
]
},
"else": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "else"
},
{
"type": "SYMBOL",
"name": "_word"
}
]
},
"conditional": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "if"
},
{
"type": "FIELD",
"name": "condition",
"content": {
"type": "SYMBOL",
"name": "expr"
}
},
{
"type": "SYMBOL",
"name": "_word"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "elseif"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "else"
},
{
"type": "BLANK"
}
]
}
]
},
"catch": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "catch"
},
{
"type": "SYMBOL",
"name": "_word"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_concat_word"
},
{
"type": "BLANK"
}
]
}
]
},
"quoted_word": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\""
},
{
"type": "REPEAT",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "variable_substitution"
},
{
"type": "SYMBOL",
"name": "_quoted_word_content"
},
{
"type": "SYMBOL",
"name": "command_substitution"
},
{
"type": "SYMBOL",
"name": "escaped_character"
}
]
}
},
{
"type": "STRING",
"value": "\""
}
]
},
"escaped_character": {
"type": "PATTERN",
"value": "\\\\."
},
"_quoted_word_content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": -1,
"content": {
"type": "PATTERN",
"value": "[^$\\\\\\[\\]\"]+"
}
}
},
"command_substitution": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "SYMBOL",
"name": "_command"
},
{
"type": "STRING",
"value": "]"
}
]
},
"simple_word": {
"type": "PATTERN",
"value": "[^!$\\s\\\\\\[\\]{}();\"]+"
}
},
"extras": [
{
"type": "PATTERN",
"value": "\\s+"
},
{
"type": "PATTERN",
"value": "\\\\\\r?\\n"
}
],
"conflicts": [],
"precedences": [],
"externals": [
{
"type": "SYMBOL",
"name": "_concat"
},
{
"type": "SYMBOL",
"name": "_immediate"
}
],
"inline": [
"_builtin",
"_terminator",
"_word"
],
"supertypes": []
}
07070100000037000081A4000000000000000000000001672A224000006856000000000000000000000000000000000000003700000000tree-sitter-tcl-0+20241105.98015eb/src/node-types.json[
{
"type": "argument",
"named": true,
"fields": {
"default": {
"multiple": false,
"required": false,
"types": [
{
"type": "braced_word",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
}
]
},
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "simple_word",
"named": true
}
]
}
}
},
{
"type": "arguments",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "argument",
"named": true
},
{
"type": "simple_word",
"named": true
}
]
}
},
{
"type": "array_index",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "braced_word_simple",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "binop_expr",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "binop_expr",
"named": true
},
{
"type": "braced_word_simple",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "ternary_expr",
"named": true
},
{
"type": "unary_expr",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "braced_word",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "catch",
"named": true
},
{
"type": "command",
"named": true
},
{
"type": "comment",
"named": true
},
{
"type": "conditional",
"named": true
},
{
"type": "expr_cmd",
"named": true
},
{
"type": "foreach",
"named": true
},
{
"type": "global",
"named": true
},
{
"type": "namespace",
"named": true
},
{
"type": "procedure",
"named": true
},
{
"type": "regexp",
"named": true
},
{
"type": "set",
"named": true
},
{
"type": "try",
"named": true
},
{
"type": "while",
"named": true
}
]
}
},
{
"type": "braced_word_simple",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "braced_word_simple",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "catch",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "command",
"named": true,
"fields": {
"arguments": {
"multiple": false,
"required": false,
"types": [
{
"type": "word_list",
"named": true
}
]
},
"name": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
}
},
{
"type": "command_substitution",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "catch",
"named": true
},
{
"type": "command",
"named": true
},
{
"type": "comment",
"named": true
},
{
"type": "conditional",
"named": true
},
{
"type": "expr_cmd",
"named": true
},
{
"type": "foreach",
"named": true
},
{
"type": "global",
"named": true
},
{
"type": "namespace",
"named": true
},
{
"type": "procedure",
"named": true
},
{
"type": "regexp",
"named": true
},
{
"type": "set",
"named": true
},
{
"type": "try",
"named": true
},
{
"type": "while",
"named": true
}
]
}
},
{
"type": "conditional",
"named": true,
"fields": {
"condition": {
"multiple": false,
"required": true,
"types": [
{
"type": "expr",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "else",
"named": true
},
{
"type": "elseif",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "else",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "elseif",
"named": true,
"fields": {
"condition": {
"multiple": false,
"required": true,
"types": [
{
"type": "expr",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "expr",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "binop_expr",
"named": true
},
{
"type": "braced_word_simple",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "ternary_expr",
"named": true
},
{
"type": "unary_expr",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "expr_cmd",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "expr",
"named": true
}
]
}
},
{
"type": "finally",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "foreach",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "arguments",
"named": true
},
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "braced_word_simple",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "global",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "id",
"named": true,
"fields": {}
},
{
"type": "namespace",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "word_list",
"named": true
}
]
}
},
{
"type": "procedure",
"named": true,
"fields": {
"arguments": {
"multiple": false,
"required": true,
"types": [
{
"type": "arguments",
"named": true
}
]
},
"body": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
},
"name": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
}
},
{
"type": "quoted_word",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "regexp",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word_simple",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "set",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word_simple",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "source_file",
"named": true,
"root": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "catch",
"named": true
},
{
"type": "command",
"named": true
},
{
"type": "comment",
"named": true
},
{
"type": "conditional",
"named": true
},
{
"type": "expr_cmd",
"named": true
},
{
"type": "foreach",
"named": true
},
{
"type": "global",
"named": true
},
{
"type": "namespace",
"named": true
},
{
"type": "procedure",
"named": true
},
{
"type": "regexp",
"named": true
},
{
"type": "set",
"named": true
},
{
"type": "try",
"named": true
},
{
"type": "while",
"named": true
}
]
}
},
{
"type": "ternary_expr",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "binop_expr",
"named": true
},
{
"type": "braced_word_simple",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "ternary_expr",
"named": true
},
{
"type": "unary_expr",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "try",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "arguments",
"named": true
},
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "finally",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "unary_expr",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "binop_expr",
"named": true
},
{
"type": "braced_word_simple",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "ternary_expr",
"named": true
},
{
"type": "unary_expr",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "variable_substitution",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "id",
"named": true
}
]
}
},
{
"type": "while",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "expr",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "word_list",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "array_index",
"named": true
},
{
"type": "braced_word",
"named": true
},
{
"type": "command_substitution",
"named": true
},
{
"type": "escaped_character",
"named": true
},
{
"type": "quoted_word",
"named": true
},
{
"type": "simple_word",
"named": true
},
{
"type": "unpack",
"named": true
},
{
"type": "variable_substitution",
"named": true
}
]
}
},
{
"type": "\n",
"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": "catch",
"named": false
},
{
"type": "comment",
"named": true
},
{
"type": "else",
"named": false
},
{
"type": "elseif",
"named": false
},
{
"type": "eq",
"named": false
},
{
"type": "error",
"named": false
},
{
"type": "escaped_character",
"named": true
},
{
"type": "expr",
"named": false
},
{
"type": "finally",
"named": false
},
{
"type": "foreach",
"named": false
},
{
"type": "global",
"named": false
},
{
"type": "if",
"named": false
},
{
"type": "in",
"named": false
},
{
"type": "namespace",
"named": false
},
{
"type": "ne",
"named": false
},
{
"type": "ni",
"named": false
},
{
"type": "on",
"named": false
},
{
"type": "proc",
"named": false
},
{
"type": "regexp",
"named": false
},
{
"type": "set",
"named": false
},
{
"type": "simple_word",
"named": true
},
{
"type": "try",
"named": false
},
{
"type": "unpack",
"named": true
},
{
"type": "while",
"named": false
},
{
"type": "{",
"named": false
},
{
"type": "|",
"named": false
},
{
"type": "||",
"named": false
},
{
"type": "}",
"named": false
},
{
"type": "~",
"named": false
}
]07070100000038000081A4000000000000000000000001672A22400006C73A000000000000000000000000000000000000003000000000tree-sitter-tcl-0+20241105.98015eb/src/parser.c#include "tree_sitter/parser.h"
#if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
#endif
#define LANGUAGE_VERSION 14
#define STATE_COUNT 710
#define LARGE_STATE_COUNT 2
#define SYMBOL_COUNT 119
#define ALIAS_COUNT 0
#define TOKEN_COUNT 69
#define EXTERNAL_TOKEN_COUNT 2
#define FIELD_COUNT 5
#define MAX_ALIAS_SEQUENCE_LENGTH 9
#define PRODUCTION_ID_COUNT 12
enum ts_symbol_identifiers {
sym_simple_word = 1,
anon_sym_LF = 2,
anon_sym_SEMI = 3,
sym_comment = 4,
anon_sym_regexp = 5,
anon_sym_while = 6,
anon_sym_expr = 7,
anon_sym_foreach = 8,
anon_sym_global = 9,
anon_sym_namespace = 10,
anon_sym_try = 11,
anon_sym_on = 12,
anon_sym_error = 13,
anon_sym_finally = 14,
sym_unpack = 15,
anon_sym_COLON_COLON = 16,
sym__ident_imm = 17,
sym__ident = 18,
anon_sym_COLON_COLON2 = 19,
anon_sym_LPAREN = 20,
anon_sym_RPAREN = 21,
anon_sym_DOLLAR = 22,
anon_sym_LBRACE = 23,
aux_sym_variable_substitution_token1 = 24,
anon_sym_RBRACE = 25,
anon_sym_set = 26,
anon_sym_proc = 27,
sym__number = 28,
sym__boolean = 29,
anon_sym_LPAREN2 = 30,
anon_sym_DASH = 31,
anon_sym_PLUS = 32,
anon_sym_TILDE = 33,
anon_sym_BANG = 34,
anon_sym_STAR_STAR = 35,
anon_sym_SLASH = 36,
anon_sym_STAR = 37,
anon_sym_PERCENT = 38,
anon_sym_LT_LT = 39,
anon_sym_GT_GT = 40,
anon_sym_GT = 41,
anon_sym_LT = 42,
anon_sym_GT_EQ = 43,
anon_sym_LT_EQ = 44,
anon_sym_EQ_EQ = 45,
anon_sym_BANG_EQ = 46,
anon_sym_eq = 47,
anon_sym_ne = 48,
anon_sym_in = 49,
anon_sym_ni = 50,
anon_sym_AMP = 51,
anon_sym_CARET = 52,
anon_sym_PIPE = 53,
anon_sym_AMP_AMP = 54,
anon_sym_PIPE_PIPE = 55,
anon_sym_QMARK = 56,
anon_sym_COLON = 57,
anon_sym_elseif = 58,
anon_sym_else = 59,
anon_sym_if = 60,
anon_sym_catch = 61,
anon_sym_DQUOTE = 62,
sym_escaped_character = 63,
sym__quoted_word_content = 64,
anon_sym_LBRACK = 65,
anon_sym_RBRACK = 66,
sym__concat = 67,
sym__immediate = 68,
sym_source_file = 69,
sym_regexp = 70,
sym_while = 71,
sym_expr_cmd = 72,
sym_foreach = 73,
sym_global = 74,
sym_namespace = 75,
sym_try = 76,
sym_finally = 77,
sym__command = 78,
sym_command = 79,
sym_word_list = 80,
sym__word_simple = 81,
sym__concat_word = 82,
sym__ns_delim = 83,
sym__id_immediate = 84,
sym_id = 85,
sym_array_index = 86,
sym_variable_substitution = 87,
sym_braced_word = 88,
sym_braced_word_simple = 89,
sym_set = 90,
sym_procedure = 91,
sym__argument_word = 92,
sym_argument = 93,
sym_arguments = 94,
sym__expr_atom_no_brace = 95,
sym__expr = 96,
sym_expr = 97,
sym_unary_expr = 98,
sym_binop_expr = 99,
sym_ternary_expr = 100,
sym_elseif = 101,
sym_else = 102,
sym_conditional = 103,
sym_catch = 104,
sym_quoted_word = 105,
sym_command_substitution = 106,
aux_sym_source_file_repeat1 = 107,
aux_sym_regexp_repeat1 = 108,
aux_sym_word_list_repeat1 = 109,
aux_sym__word_simple_repeat1 = 110,
aux_sym__concat_word_repeat1 = 111,
aux_sym__id_immediate_repeat1 = 112,
aux_sym_braced_word_repeat1 = 113,
aux_sym_braced_word_repeat2 = 114,
aux_sym_braced_word_simple_repeat1 = 115,
aux_sym_arguments_repeat1 = 116,
aux_sym_conditional_repeat1 = 117,
aux_sym_quoted_word_repeat1 = 118,
};
static const char * const ts_symbol_names[] = {
[ts_builtin_sym_end] = "end",
[sym_simple_word] = "simple_word",
[anon_sym_LF] = "\n",
[anon_sym_SEMI] = ";",
[sym_comment] = "comment",
[anon_sym_regexp] = "regexp",
[anon_sym_while] = "while",
[anon_sym_expr] = "expr",
[anon_sym_foreach] = "foreach",
[anon_sym_global] = "global",
[anon_sym_namespace] = "namespace",
[anon_sym_try] = "try",
[anon_sym_on] = "on",
[anon_sym_error] = "error",
[anon_sym_finally] = "finally",
[sym_unpack] = "unpack",
[anon_sym_COLON_COLON] = "::",
[sym__ident_imm] = "_ident_imm",
[sym__ident] = "_ident",
[anon_sym_COLON_COLON2] = "::",
[anon_sym_LPAREN] = "(",
[anon_sym_RPAREN] = ")",
[anon_sym_DOLLAR] = "$",
[anon_sym_LBRACE] = "{",
[aux_sym_variable_substitution_token1] = "variable_substitution_token1",
[anon_sym_RBRACE] = "}",
[anon_sym_set] = "set",
[anon_sym_proc] = "proc",
[sym__number] = "_number",
[sym__boolean] = "_boolean",
[anon_sym_LPAREN2] = "(",
[anon_sym_DASH] = "-",
[anon_sym_PLUS] = "+",
[anon_sym_TILDE] = "~",
[anon_sym_BANG] = "!",
[anon_sym_STAR_STAR] = "**",
[anon_sym_SLASH] = "/",
[anon_sym_STAR] = "*",
[anon_sym_PERCENT] = "%",
[anon_sym_LT_LT] = "<<",
[anon_sym_GT_GT] = ">>",
[anon_sym_GT] = ">",
[anon_sym_LT] = "<",
[anon_sym_GT_EQ] = ">=",
[anon_sym_LT_EQ] = "<=",
[anon_sym_EQ_EQ] = "==",
[anon_sym_BANG_EQ] = "!=",
[anon_sym_eq] = "eq",
[anon_sym_ne] = "ne",
[anon_sym_in] = "in",
[anon_sym_ni] = "ni",
[anon_sym_AMP] = "&",
[anon_sym_CARET] = "^",
[anon_sym_PIPE] = "|",
[anon_sym_AMP_AMP] = "&&",
[anon_sym_PIPE_PIPE] = "||",
[anon_sym_QMARK] = "\?",
[anon_sym_COLON] = ":",
[anon_sym_elseif] = "elseif",
[anon_sym_else] = "else",
[anon_sym_if] = "if",
[anon_sym_catch] = "catch",
[anon_sym_DQUOTE] = "\"",
[sym_escaped_character] = "escaped_character",
[sym__quoted_word_content] = "_quoted_word_content",
[anon_sym_LBRACK] = "[",
[anon_sym_RBRACK] = "]",
[sym__concat] = "_concat",
[sym__immediate] = "_immediate",
[sym_source_file] = "source_file",
[sym_regexp] = "regexp",
[sym_while] = "while",
[sym_expr_cmd] = "expr_cmd",
[sym_foreach] = "foreach",
[sym_global] = "global",
[sym_namespace] = "namespace",
[sym_try] = "try",
[sym_finally] = "finally",
[sym__command] = "_command",
[sym_command] = "command",
[sym_word_list] = "word_list",
[sym__word_simple] = "_word_simple",
[sym__concat_word] = "_concat_word",
[sym__ns_delim] = "_ns_delim",
[sym__id_immediate] = "id",
[sym_id] = "id",
[sym_array_index] = "array_index",
[sym_variable_substitution] = "variable_substitution",
[sym_braced_word] = "braced_word",
[sym_braced_word_simple] = "braced_word_simple",
[sym_set] = "set",
[sym_procedure] = "procedure",
[sym__argument_word] = "_argument_word",
[sym_argument] = "argument",
[sym_arguments] = "arguments",
[sym__expr_atom_no_brace] = "_expr_atom_no_brace",
[sym__expr] = "_expr",
[sym_expr] = "expr",
[sym_unary_expr] = "unary_expr",
[sym_binop_expr] = "binop_expr",
[sym_ternary_expr] = "ternary_expr",
[sym_elseif] = "elseif",
[sym_else] = "else",
[sym_conditional] = "conditional",
[sym_catch] = "catch",
[sym_quoted_word] = "quoted_word",
[sym_command_substitution] = "command_substitution",
[aux_sym_source_file_repeat1] = "source_file_repeat1",
[aux_sym_regexp_repeat1] = "regexp_repeat1",
[aux_sym_word_list_repeat1] = "word_list_repeat1",
[aux_sym__word_simple_repeat1] = "_word_simple_repeat1",
[aux_sym__concat_word_repeat1] = "_concat_word_repeat1",
[aux_sym__id_immediate_repeat1] = "_id_immediate_repeat1",
[aux_sym_braced_word_repeat1] = "braced_word_repeat1",
[aux_sym_braced_word_repeat2] = "braced_word_repeat2",
[aux_sym_braced_word_simple_repeat1] = "braced_word_simple_repeat1",
[aux_sym_arguments_repeat1] = "arguments_repeat1",
[aux_sym_conditional_repeat1] = "conditional_repeat1",
[aux_sym_quoted_word_repeat1] = "quoted_word_repeat1",
};
static const TSSymbol ts_symbol_map[] = {
[ts_builtin_sym_end] = ts_builtin_sym_end,
[sym_simple_word] = sym_simple_word,
[anon_sym_LF] = anon_sym_LF,
[anon_sym_SEMI] = anon_sym_SEMI,
[sym_comment] = sym_comment,
[anon_sym_regexp] = anon_sym_regexp,
[anon_sym_while] = anon_sym_while,
[anon_sym_expr] = anon_sym_expr,
[anon_sym_foreach] = anon_sym_foreach,
[anon_sym_global] = anon_sym_global,
[anon_sym_namespace] = anon_sym_namespace,
[anon_sym_try] = anon_sym_try,
[anon_sym_on] = anon_sym_on,
[anon_sym_error] = anon_sym_error,
[anon_sym_finally] = anon_sym_finally,
[sym_unpack] = sym_unpack,
[anon_sym_COLON_COLON] = anon_sym_COLON_COLON,
[sym__ident_imm] = sym__ident_imm,
[sym__ident] = sym__ident,
[anon_sym_COLON_COLON2] = anon_sym_COLON_COLON,
[anon_sym_LPAREN] = anon_sym_LPAREN,
[anon_sym_RPAREN] = anon_sym_RPAREN,
[anon_sym_DOLLAR] = anon_sym_DOLLAR,
[anon_sym_LBRACE] = anon_sym_LBRACE,
[aux_sym_variable_substitution_token1] = aux_sym_variable_substitution_token1,
[anon_sym_RBRACE] = anon_sym_RBRACE,
[anon_sym_set] = anon_sym_set,
[anon_sym_proc] = anon_sym_proc,
[sym__number] = sym__number,
[sym__boolean] = sym__boolean,
[anon_sym_LPAREN2] = anon_sym_LPAREN,
[anon_sym_DASH] = anon_sym_DASH,
[anon_sym_PLUS] = anon_sym_PLUS,
[anon_sym_TILDE] = anon_sym_TILDE,
[anon_sym_BANG] = anon_sym_BANG,
[anon_sym_STAR_STAR] = anon_sym_STAR_STAR,
[anon_sym_SLASH] = anon_sym_SLASH,
[anon_sym_STAR] = anon_sym_STAR,
[anon_sym_PERCENT] = anon_sym_PERCENT,
[anon_sym_LT_LT] = anon_sym_LT_LT,
[anon_sym_GT_GT] = anon_sym_GT_GT,
[anon_sym_GT] = anon_sym_GT,
[anon_sym_LT] = anon_sym_LT,
[anon_sym_GT_EQ] = anon_sym_GT_EQ,
[anon_sym_LT_EQ] = anon_sym_LT_EQ,
[anon_sym_EQ_EQ] = anon_sym_EQ_EQ,
[anon_sym_BANG_EQ] = anon_sym_BANG_EQ,
[anon_sym_eq] = anon_sym_eq,
[anon_sym_ne] = anon_sym_ne,
[anon_sym_in] = anon_sym_in,
[anon_sym_ni] = anon_sym_ni,
[anon_sym_AMP] = anon_sym_AMP,
[anon_sym_CARET] = anon_sym_CARET,
[anon_sym_PIPE] = anon_sym_PIPE,
[anon_sym_AMP_AMP] = anon_sym_AMP_AMP,
[anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE,
[anon_sym_QMARK] = anon_sym_QMARK,
[anon_sym_COLON] = anon_sym_COLON,
[anon_sym_elseif] = anon_sym_elseif,
[anon_sym_else] = anon_sym_else,
[anon_sym_if] = anon_sym_if,
[anon_sym_catch] = anon_sym_catch,
[anon_sym_DQUOTE] = anon_sym_DQUOTE,
[sym_escaped_character] = sym_escaped_character,
[sym__quoted_word_content] = sym__quoted_word_content,
[anon_sym_LBRACK] = anon_sym_LBRACK,
[anon_sym_RBRACK] = anon_sym_RBRACK,
[sym__concat] = sym__concat,
[sym__immediate] = sym__immediate,
[sym_source_file] = sym_source_file,
[sym_regexp] = sym_regexp,
[sym_while] = sym_while,
[sym_expr_cmd] = sym_expr_cmd,
[sym_foreach] = sym_foreach,
[sym_global] = sym_global,
[sym_namespace] = sym_namespace,
[sym_try] = sym_try,
[sym_finally] = sym_finally,
[sym__command] = sym__command,
[sym_command] = sym_command,
[sym_word_list] = sym_word_list,
[sym__word_simple] = sym__word_simple,
[sym__concat_word] = sym__concat_word,
[sym__ns_delim] = sym__ns_delim,
[sym__id_immediate] = sym_id,
[sym_id] = sym_id,
[sym_array_index] = sym_array_index,
[sym_variable_substitution] = sym_variable_substitution,
[sym_braced_word] = sym_braced_word,
[sym_braced_word_simple] = sym_braced_word_simple,
[sym_set] = sym_set,
[sym_procedure] = sym_procedure,
[sym__argument_word] = sym__argument_word,
[sym_argument] = sym_argument,
[sym_arguments] = sym_arguments,
[sym__expr_atom_no_brace] = sym__expr_atom_no_brace,
[sym__expr] = sym__expr,
[sym_expr] = sym_expr,
[sym_unary_expr] = sym_unary_expr,
[sym_binop_expr] = sym_binop_expr,
[sym_ternary_expr] = sym_ternary_expr,
[sym_elseif] = sym_elseif,
[sym_else] = sym_else,
[sym_conditional] = sym_conditional,
[sym_catch] = sym_catch,
[sym_quoted_word] = sym_quoted_word,
[sym_command_substitution] = sym_command_substitution,
[aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1,
[aux_sym_regexp_repeat1] = aux_sym_regexp_repeat1,
[aux_sym_word_list_repeat1] = aux_sym_word_list_repeat1,
[aux_sym__word_simple_repeat1] = aux_sym__word_simple_repeat1,
[aux_sym__concat_word_repeat1] = aux_sym__concat_word_repeat1,
[aux_sym__id_immediate_repeat1] = aux_sym__id_immediate_repeat1,
[aux_sym_braced_word_repeat1] = aux_sym_braced_word_repeat1,
[aux_sym_braced_word_repeat2] = aux_sym_braced_word_repeat2,
[aux_sym_braced_word_simple_repeat1] = aux_sym_braced_word_simple_repeat1,
[aux_sym_arguments_repeat1] = aux_sym_arguments_repeat1,
[aux_sym_conditional_repeat1] = aux_sym_conditional_repeat1,
[aux_sym_quoted_word_repeat1] = aux_sym_quoted_word_repeat1,
};
static const TSSymbolMetadata ts_symbol_metadata[] = {
[ts_builtin_sym_end] = {
.visible = false,
.named = true,
},
[sym_simple_word] = {
.visible = true,
.named = true,
},
[anon_sym_LF] = {
.visible = true,
.named = false,
},
[anon_sym_SEMI] = {
.visible = true,
.named = false,
},
[sym_comment] = {
.visible = true,
.named = true,
},
[anon_sym_regexp] = {
.visible = true,
.named = false,
},
[anon_sym_while] = {
.visible = true,
.named = false,
},
[anon_sym_expr] = {
.visible = true,
.named = false,
},
[anon_sym_foreach] = {
.visible = true,
.named = false,
},
[anon_sym_global] = {
.visible = true,
.named = false,
},
[anon_sym_namespace] = {
.visible = true,
.named = false,
},
[anon_sym_try] = {
.visible = true,
.named = false,
},
[anon_sym_on] = {
.visible = true,
.named = false,
},
[anon_sym_error] = {
.visible = true,
.named = false,
},
[anon_sym_finally] = {
.visible = true,
.named = false,
},
[sym_unpack] = {
.visible = true,
.named = true,
},
[anon_sym_COLON_COLON] = {
.visible = true,
.named = false,
},
[sym__ident_imm] = {
.visible = false,
.named = true,
},
[sym__ident] = {
.visible = false,
.named = true,
},
[anon_sym_COLON_COLON2] = {
.visible = true,
.named = false,
},
[anon_sym_LPAREN] = {
.visible = true,
.named = false,
},
[anon_sym_RPAREN] = {
.visible = true,
.named = false,
},
[anon_sym_DOLLAR] = {
.visible = true,
.named = false,
},
[anon_sym_LBRACE] = {
.visible = true,
.named = false,
},
[aux_sym_variable_substitution_token1] = {
.visible = false,
.named = false,
},
[anon_sym_RBRACE] = {
.visible = true,
.named = false,
},
[anon_sym_set] = {
.visible = true,
.named = false,
},
[anon_sym_proc] = {
.visible = true,
.named = false,
},
[sym__number] = {
.visible = false,
.named = true,
},
[sym__boolean] = {
.visible = false,
.named = true,
},
[anon_sym_LPAREN2] = {
.visible = true,
.named = false,
},
[anon_sym_DASH] = {
.visible = true,
.named = false,
},
[anon_sym_PLUS] = {
.visible = true,
.named = false,
},
[anon_sym_TILDE] = {
.visible = true,
.named = false,
},
[anon_sym_BANG] = {
.visible = true,
.named = false,
},
[anon_sym_STAR_STAR] = {
.visible = true,
.named = false,
},
[anon_sym_SLASH] = {
.visible = true,
.named = false,
},
[anon_sym_STAR] = {
.visible = true,
.named = false,
},
[anon_sym_PERCENT] = {
.visible = true,
.named = false,
},
[anon_sym_LT_LT] = {
.visible = true,
.named = false,
},
[anon_sym_GT_GT] = {
.visible = true,
.named = false,
},
[anon_sym_GT] = {
.visible = true,
.named = false,
},
[anon_sym_LT] = {
.visible = true,
.named = false,
},
[anon_sym_GT_EQ] = {
.visible = true,
.named = false,
},
[anon_sym_LT_EQ] = {
.visible = true,
.named = false,
},
[anon_sym_EQ_EQ] = {
.visible = true,
.named = false,
},
[anon_sym_BANG_EQ] = {
.visible = true,
.named = false,
},
[anon_sym_eq] = {
.visible = true,
.named = false,
},
[anon_sym_ne] = {
.visible = true,
.named = false,
},
[anon_sym_in] = {
.visible = true,
.named = false,
},
[anon_sym_ni] = {
.visible = true,
.named = false,
},
[anon_sym_AMP] = {
.visible = true,
.named = false,
},
[anon_sym_CARET] = {
.visible = true,
.named = false,
},
[anon_sym_PIPE] = {
.visible = true,
.named = false,
},
[anon_sym_AMP_AMP] = {
.visible = true,
.named = false,
},
[anon_sym_PIPE_PIPE] = {
.visible = true,
.named = false,
},
[anon_sym_QMARK] = {
.visible = true,
.named = false,
},
[anon_sym_COLON] = {
.visible = true,
.named = false,
},
[anon_sym_elseif] = {
.visible = true,
.named = false,
},
[anon_sym_else] = {
.visible = true,
.named = false,
},
[anon_sym_if] = {
.visible = true,
.named = false,
},
[anon_sym_catch] = {
.visible = true,
.named = false,
},
[anon_sym_DQUOTE] = {
.visible = true,
.named = false,
},
[sym_escaped_character] = {
.visible = true,
.named = true,
},
[sym__quoted_word_content] = {
.visible = false,
.named = true,
},
[anon_sym_LBRACK] = {
.visible = true,
.named = false,
},
[anon_sym_RBRACK] = {
.visible = true,
.named = false,
},
[sym__concat] = {
.visible = false,
.named = true,
},
[sym__immediate] = {
.visible = false,
.named = true,
},
[sym_source_file] = {
.visible = true,
.named = true,
},
[sym_regexp] = {
.visible = true,
.named = true,
},
[sym_while] = {
.visible = true,
.named = true,
},
[sym_expr_cmd] = {
.visible = true,
.named = true,
},
[sym_foreach] = {
.visible = true,
.named = true,
},
[sym_global] = {
.visible = true,
.named = true,
},
[sym_namespace] = {
.visible = true,
.named = true,
},
[sym_try] = {
.visible = true,
.named = true,
},
[sym_finally] = {
.visible = true,
.named = true,
},
[sym__command] = {
.visible = false,
.named = true,
},
[sym_command] = {
.visible = true,
.named = true,
},
[sym_word_list] = {
.visible = true,
.named = true,
},
[sym__word_simple] = {
.visible = false,
.named = true,
},
[sym__concat_word] = {
.visible = false,
.named = true,
},
[sym__ns_delim] = {
.visible = false,
.named = true,
},
[sym__id_immediate] = {
.visible = true,
.named = true,
},
[sym_id] = {
.visible = true,
.named = true,
},
[sym_array_index] = {
.visible = true,
.named = true,
},
[sym_variable_substitution] = {
.visible = true,
.named = true,
},
[sym_braced_word] = {
.visible = true,
.named = true,
},
[sym_braced_word_simple] = {
.visible = true,
.named = true,
},
[sym_set] = {
.visible = true,
.named = true,
},
[sym_procedure] = {
.visible = true,
.named = true,
},
[sym__argument_word] = {
.visible = false,
.named = true,
},
[sym_argument] = {
.visible = true,
.named = true,
},
[sym_arguments] = {
.visible = true,
.named = true,
},
[sym__expr_atom_no_brace] = {
.visible = false,
.named = true,
},
[sym__expr] = {
.visible = false,
.named = true,
},
[sym_expr] = {
.visible = true,
.named = true,
},
[sym_unary_expr] = {
.visible = true,
.named = true,
},
[sym_binop_expr] = {
.visible = true,
.named = true,
},
[sym_ternary_expr] = {
.visible = true,
.named = true,
},
[sym_elseif] = {
.visible = true,
.named = true,
},
[sym_else] = {
.visible = true,
.named = true,
},
[sym_conditional] = {
.visible = true,
.named = true,
},
[sym_catch] = {
.visible = true,
.named = true,
},
[sym_quoted_word] = {
.visible = true,
.named = true,
},
[sym_command_substitution] = {
.visible = true,
.named = true,
},
[aux_sym_source_file_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_regexp_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_word_list_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym__word_simple_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym__concat_word_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym__id_immediate_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_braced_word_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_braced_word_repeat2] = {
.visible = false,
.named = false,
},
[aux_sym_braced_word_simple_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_arguments_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_conditional_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_quoted_word_repeat1] = {
.visible = false,
.named = false,
},
};
enum ts_field_identifiers {
field_arguments = 1,
field_body = 2,
field_condition = 3,
field_default = 4,
field_name = 5,
};
static const char * const ts_field_names[] = {
[0] = NULL,
[field_arguments] = "arguments",
[field_body] = "body",
[field_condition] = "condition",
[field_default] = "default",
[field_name] = "name",
};
static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
[1] = {.index = 0, .length = 1},
[2] = {.index = 1, .length = 2},
[3] = {.index = 3, .length = 2},
[4] = {.index = 5, .length = 3},
[5] = {.index = 8, .length = 1},
[6] = {.index = 9, .length = 3},
[7] = {.index = 12, .length = 1},
[8] = {.index = 13, .length = 4},
[9] = {.index = 17, .length = 4},
[10] = {.index = 21, .length = 2},
[11] = {.index = 23, .length = 5},
};
static const TSFieldMapEntry ts_field_map_entries[] = {
[0] =
{field_name, 0},
[1] =
{field_name, 0},
{field_name, 1},
[3] =
{field_arguments, 1},
{field_name, 0},
[5] =
{field_arguments, 2},
{field_name, 0},
{field_name, 1},
[8] =
{field_condition, 1},
[9] =
{field_arguments, 2},
{field_body, 3},
{field_name, 1},
[12] =
{field_name, 1},
[13] =
{field_arguments, 3},
{field_body, 4},
{field_name, 1},
{field_name, 2},
[17] =
{field_arguments, 2},
{field_body, 3},
{field_body, 4},
{field_name, 1},
[21] =
{field_default, 2},
{field_name, 1},
[23] =
{field_arguments, 3},
{field_body, 4},
{field_body, 5},
{field_name, 1},
{field_name, 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] = 4,
[5] = 4,
[6] = 6,
[7] = 6,
[8] = 4,
[9] = 4,
[10] = 6,
[11] = 6,
[12] = 4,
[13] = 6,
[14] = 14,
[15] = 15,
[16] = 15,
[17] = 15,
[18] = 15,
[19] = 15,
[20] = 20,
[21] = 20,
[22] = 20,
[23] = 20,
[24] = 20,
[25] = 20,
[26] = 20,
[27] = 20,
[28] = 20,
[29] = 20,
[30] = 30,
[31] = 31,
[32] = 32,
[33] = 33,
[34] = 34,
[35] = 35,
[36] = 36,
[37] = 37,
[38] = 38,
[39] = 39,
[40] = 40,
[41] = 41,
[42] = 42,
[43] = 43,
[44] = 44,
[45] = 45,
[46] = 46,
[47] = 47,
[48] = 48,
[49] = 49,
[50] = 50,
[51] = 51,
[52] = 52,
[53] = 53,
[54] = 54,
[55] = 55,
[56] = 56,
[57] = 57,
[58] = 58,
[59] = 59,
[60] = 60,
[61] = 61,
[62] = 62,
[63] = 63,
[64] = 64,
[65] = 65,
[66] = 66,
[67] = 64,
[68] = 66,
[69] = 66,
[70] = 64,
[71] = 71,
[72] = 72,
[73] = 73,
[74] = 74,
[75] = 75,
[76] = 76,
[77] = 77,
[78] = 78,
[79] = 79,
[80] = 80,
[81] = 81,
[82] = 82,
[83] = 83,
[84] = 84,
[85] = 85,
[86] = 82,
[87] = 74,
[88] = 88,
[89] = 82,
[90] = 74,
[91] = 91,
[92] = 92,
[93] = 93,
[94] = 94,
[95] = 95,
[96] = 96,
[97] = 97,
[98] = 98,
[99] = 99,
[100] = 100,
[101] = 34,
[102] = 30,
[103] = 96,
[104] = 32,
[105] = 31,
[106] = 33,
[107] = 97,
[108] = 108,
[109] = 109,
[110] = 110,
[111] = 110,
[112] = 98,
[113] = 99,
[114] = 100,
[115] = 115,
[116] = 116,
[117] = 30,
[118] = 118,
[119] = 32,
[120] = 120,
[121] = 36,
[122] = 34,
[123] = 31,
[124] = 37,
[125] = 120,
[126] = 126,
[127] = 32,
[128] = 128,
[129] = 120,
[130] = 126,
[131] = 131,
[132] = 120,
[133] = 126,
[134] = 134,
[135] = 33,
[136] = 136,
[137] = 120,
[138] = 126,
[139] = 139,
[140] = 140,
[141] = 35,
[142] = 142,
[143] = 143,
[144] = 144,
[145] = 126,
[146] = 146,
[147] = 147,
[148] = 148,
[149] = 149,
[150] = 148,
[151] = 151,
[152] = 152,
[153] = 153,
[154] = 154,
[155] = 155,
[156] = 156,
[157] = 153,
[158] = 158,
[159] = 159,
[160] = 160,
[161] = 161,
[162] = 162,
[163] = 163,
[164] = 159,
[165] = 108,
[166] = 115,
[167] = 167,
[168] = 160,
[169] = 147,
[170] = 170,
[171] = 154,
[172] = 109,
[173] = 34,
[174] = 174,
[175] = 34,
[176] = 33,
[177] = 30,
[178] = 33,
[179] = 30,
[180] = 31,
[181] = 181,
[182] = 182,
[183] = 32,
[184] = 156,
[185] = 185,
[186] = 167,
[187] = 31,
[188] = 188,
[189] = 181,
[190] = 155,
[191] = 161,
[192] = 32,
[193] = 174,
[194] = 162,
[195] = 195,
[196] = 163,
[197] = 182,
[198] = 195,
[199] = 149,
[200] = 200,
[201] = 201,
[202] = 202,
[203] = 203,
[204] = 204,
[205] = 136,
[206] = 109,
[207] = 116,
[208] = 208,
[209] = 209,
[210] = 35,
[211] = 134,
[212] = 212,
[213] = 118,
[214] = 131,
[215] = 42,
[216] = 216,
[217] = 139,
[218] = 140,
[219] = 144,
[220] = 36,
[221] = 44,
[222] = 37,
[223] = 128,
[224] = 224,
[225] = 34,
[226] = 33,
[227] = 30,
[228] = 36,
[229] = 31,
[230] = 142,
[231] = 32,
[232] = 212,
[233] = 41,
[234] = 234,
[235] = 200,
[236] = 34,
[237] = 33,
[238] = 30,
[239] = 32,
[240] = 200,
[241] = 32,
[242] = 242,
[243] = 243,
[244] = 244,
[245] = 245,
[246] = 246,
[247] = 247,
[248] = 242,
[249] = 208,
[250] = 250,
[251] = 250,
[252] = 209,
[253] = 243,
[254] = 245,
[255] = 255,
[256] = 234,
[257] = 201,
[258] = 255,
[259] = 202,
[260] = 203,
[261] = 204,
[262] = 262,
[263] = 39,
[264] = 246,
[265] = 244,
[266] = 247,
[267] = 200,
[268] = 43,
[269] = 224,
[270] = 200,
[271] = 200,
[272] = 200,
[273] = 200,
[274] = 200,
[275] = 200,
[276] = 38,
[277] = 200,
[278] = 200,
[279] = 31,
[280] = 280,
[281] = 37,
[282] = 36,
[283] = 142,
[284] = 35,
[285] = 285,
[286] = 37,
[287] = 36,
[288] = 285,
[289] = 289,
[290] = 170,
[291] = 152,
[292] = 158,
[293] = 285,
[294] = 285,
[295] = 295,
[296] = 151,
[297] = 188,
[298] = 146,
[299] = 285,
[300] = 185,
[301] = 35,
[302] = 302,
[303] = 303,
[304] = 216,
[305] = 170,
[306] = 35,
[307] = 31,
[308] = 188,
[309] = 42,
[310] = 43,
[311] = 37,
[312] = 39,
[313] = 32,
[314] = 314,
[315] = 44,
[316] = 146,
[317] = 41,
[318] = 318,
[319] = 36,
[320] = 38,
[321] = 152,
[322] = 158,
[323] = 34,
[324] = 33,
[325] = 30,
[326] = 318,
[327] = 327,
[328] = 327,
[329] = 36,
[330] = 36,
[331] = 262,
[332] = 109,
[333] = 333,
[334] = 39,
[335] = 333,
[336] = 314,
[337] = 302,
[338] = 38,
[339] = 339,
[340] = 340,
[341] = 142,
[342] = 342,
[343] = 43,
[344] = 289,
[345] = 44,
[346] = 44,
[347] = 339,
[348] = 348,
[349] = 349,
[350] = 340,
[351] = 38,
[352] = 352,
[353] = 52,
[354] = 339,
[355] = 280,
[356] = 349,
[357] = 340,
[358] = 216,
[359] = 39,
[360] = 35,
[361] = 339,
[362] = 349,
[363] = 340,
[364] = 339,
[365] = 53,
[366] = 339,
[367] = 349,
[368] = 339,
[369] = 349,
[370] = 339,
[371] = 349,
[372] = 372,
[373] = 262,
[374] = 39,
[375] = 339,
[376] = 41,
[377] = 295,
[378] = 342,
[379] = 340,
[380] = 53,
[381] = 349,
[382] = 340,
[383] = 303,
[384] = 43,
[385] = 385,
[386] = 42,
[387] = 387,
[388] = 41,
[389] = 349,
[390] = 52,
[391] = 42,
[392] = 37,
[393] = 349,
[394] = 37,
[395] = 170,
[396] = 327,
[397] = 397,
[398] = 152,
[399] = 158,
[400] = 314,
[401] = 188,
[402] = 146,
[403] = 32,
[404] = 404,
[405] = 34,
[406] = 35,
[407] = 33,
[408] = 30,
[409] = 409,
[410] = 37,
[411] = 31,
[412] = 39,
[413] = 35,
[414] = 303,
[415] = 32,
[416] = 416,
[417] = 36,
[418] = 289,
[419] = 302,
[420] = 318,
[421] = 421,
[422] = 39,
[423] = 41,
[424] = 43,
[425] = 42,
[426] = 44,
[427] = 38,
[428] = 428,
[429] = 34,
[430] = 33,
[431] = 30,
[432] = 432,
[433] = 40,
[434] = 280,
[435] = 31,
[436] = 404,
[437] = 109,
[438] = 352,
[439] = 428,
[440] = 41,
[441] = 43,
[442] = 142,
[443] = 44,
[444] = 444,
[445] = 445,
[446] = 348,
[447] = 39,
[448] = 38,
[449] = 262,
[450] = 385,
[451] = 397,
[452] = 42,
[453] = 216,
[454] = 372,
[455] = 455,
[456] = 432,
[457] = 36,
[458] = 41,
[459] = 38,
[460] = 460,
[461] = 461,
[462] = 462,
[463] = 463,
[464] = 36,
[465] = 463,
[466] = 466,
[467] = 467,
[468] = 280,
[469] = 469,
[470] = 470,
[471] = 43,
[472] = 42,
[473] = 461,
[474] = 44,
[475] = 463,
[476] = 39,
[477] = 466,
[478] = 467,
[479] = 461,
[480] = 463,
[481] = 318,
[482] = 482,
[483] = 467,
[484] = 461,
[485] = 327,
[486] = 303,
[487] = 463,
[488] = 488,
[489] = 467,
[490] = 461,
[491] = 109,
[492] = 461,
[493] = 493,
[494] = 461,
[495] = 302,
[496] = 35,
[497] = 461,
[498] = 461,
[499] = 461,
[500] = 38,
[501] = 289,
[502] = 462,
[503] = 43,
[504] = 314,
[505] = 467,
[506] = 37,
[507] = 461,
[508] = 44,
[509] = 39,
[510] = 318,
[511] = 289,
[512] = 314,
[513] = 327,
[514] = 170,
[515] = 280,
[516] = 516,
[517] = 303,
[518] = 216,
[519] = 445,
[520] = 262,
[521] = 444,
[522] = 152,
[523] = 158,
[524] = 188,
[525] = 52,
[526] = 342,
[527] = 516,
[528] = 146,
[529] = 53,
[530] = 302,
[531] = 531,
[532] = 40,
[533] = 533,
[534] = 534,
[535] = 535,
[536] = 536,
[537] = 537,
[538] = 538,
[539] = 539,
[540] = 540,
[541] = 541,
[542] = 39,
[543] = 543,
[544] = 544,
[545] = 545,
[546] = 342,
[547] = 547,
[548] = 455,
[549] = 549,
[550] = 488,
[551] = 409,
[552] = 416,
[553] = 470,
[554] = 554,
[555] = 555,
[556] = 556,
[557] = 557,
[558] = 38,
[559] = 559,
[560] = 482,
[561] = 493,
[562] = 562,
[563] = 563,
[564] = 564,
[565] = 41,
[566] = 566,
[567] = 555,
[568] = 52,
[569] = 569,
[570] = 570,
[571] = 571,
[572] = 559,
[573] = 43,
[574] = 574,
[575] = 42,
[576] = 576,
[577] = 577,
[578] = 578,
[579] = 579,
[580] = 574,
[581] = 44,
[582] = 570,
[583] = 583,
[584] = 53,
[585] = 585,
[586] = 586,
[587] = 587,
[588] = 534,
[589] = 589,
[590] = 170,
[591] = 152,
[592] = 158,
[593] = 188,
[594] = 146,
[595] = 595,
[596] = 596,
[597] = 597,
[598] = 598,
[599] = 599,
[600] = 597,
[601] = 601,
[602] = 544,
[603] = 603,
[604] = 554,
[605] = 586,
[606] = 541,
[607] = 601,
[608] = 608,
[609] = 608,
[610] = 599,
[611] = 597,
[612] = 603,
[613] = 613,
[614] = 587,
[615] = 601,
[616] = 616,
[617] = 608,
[618] = 599,
[619] = 597,
[620] = 603,
[621] = 599,
[622] = 571,
[623] = 601,
[624] = 562,
[625] = 608,
[626] = 599,
[627] = 531,
[628] = 603,
[629] = 601,
[630] = 597,
[631] = 601,
[632] = 579,
[633] = 608,
[634] = 599,
[635] = 597,
[636] = 603,
[637] = 545,
[638] = 601,
[639] = 608,
[640] = 599,
[641] = 597,
[642] = 603,
[643] = 643,
[644] = 599,
[645] = 603,
[646] = 599,
[647] = 603,
[648] = 557,
[649] = 599,
[650] = 564,
[651] = 597,
[652] = 556,
[653] = 653,
[654] = 603,
[655] = 583,
[656] = 595,
[657] = 608,
[658] = 653,
[659] = 659,
[660] = 608,
[661] = 549,
[662] = 409,
[663] = 569,
[664] = 601,
[665] = 608,
[666] = 535,
[667] = 563,
[668] = 653,
[669] = 659,
[670] = 576,
[671] = 671,
[672] = 653,
[673] = 608,
[674] = 674,
[675] = 653,
[676] = 416,
[677] = 585,
[678] = 653,
[679] = 599,
[680] = 601,
[681] = 653,
[682] = 597,
[683] = 613,
[684] = 653,
[685] = 536,
[686] = 603,
[687] = 653,
[688] = 589,
[689] = 689,
[690] = 653,
[691] = 540,
[692] = 547,
[693] = 538,
[694] = 694,
[695] = 603,
[696] = 599,
[697] = 616,
[698] = 689,
[699] = 533,
[700] = 598,
[701] = 701,
[702] = 537,
[703] = 597,
[704] = 601,
[705] = 701,
[706] = 643,
[707] = 539,
[708] = 616,
[709] = 603,
};
static TSCharacterRange sym_simple_word_character_set_1[] = {
{0, 0x08}, {0x0e, 0x1f}, {'#', '#'}, {'%', '\''}, {'*', ':'}, {'<', 'Z'}, {'^', 'z'}, {'|', '|'},
{'~', 0x10ffff},
};
static bool ts_lex(TSLexer *lexer, TSStateId state) {
START_LEXER();
eof = lexer->eof(lexer);
switch (state) {
case 0:
if (eof) ADVANCE(82);
ADVANCE_MAP(
'!', 120,
'"', 172,
'#', 88,
'$', 102,
'%', 128,
'&', 152,
'(', 100,
')', 101,
'*', 125,
'+', 118,
'-', 116,
'/', 124,
':', 165,
';', 87,
'<', 135,
'=', 180,
'>', 133,
'?', 163,
'F', 195,
'[', 177,
);
if (lookahead == '\\') SKIP(79);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '^') ADVANCE(155);
if (lookahead == 'e') ADVANCE(186);
if (lookahead == 'f') ADVANCE(185);
if (lookahead == 'i') ADVANCE(189);
if (lookahead == 'n') ADVANCE(182);
if (lookahead == 'o') ADVANCE(190);
if (lookahead == '{') ADVANCE(104);
if (lookahead == '|') ADVANCE(156);
if (lookahead == '}') ADVANCE(109);
if (lookahead == '~') ADVANCE(119);
if (lookahead == 'T' ||
lookahead == 't') ADVANCE(198);
if (lookahead == '0' ||
lookahead == '1') ADVANCE(110);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(81);
if (('2' <= lookahead && lookahead <= '9')) ADVANCE(110);
if (lookahead != 0) ADVANCE(203);
END_STATE();
case 1:
ADVANCE_MAP(
'\n', 83,
'"', 172,
'#', 88,
'$', 102,
';', 87,
'[', 177,
'\\', 2,
'{', 104,
'}', 109,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(1);
if (lookahead != 0 &&
(lookahead < ' ' || '$' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 2:
if (lookahead == '\n') SKIP(1);
if (lookahead == '\r') ADVANCE(173);
if (lookahead != 0) ADVANCE(173);
END_STATE();
case 3:
if (lookahead == '\n') SKIP(39);
if (lookahead == '\r') ADVANCE(173);
if (lookahead != 0) ADVANCE(173);
END_STATE();
case 4:
if (lookahead == '\n') SKIP(37);
END_STATE();
case 5:
if (lookahead == '\n') SKIP(37);
if (lookahead == '\r') SKIP(4);
END_STATE();
case 6:
if (lookahead == '\n') SKIP(38);
END_STATE();
case 7:
if (lookahead == '\n') SKIP(38);
if (lookahead == '\r') SKIP(6);
END_STATE();
case 8:
if (lookahead == '\n') SKIP(34);
if (lookahead == '\r') ADVANCE(173);
if (lookahead != 0) ADVANCE(173);
END_STATE();
case 9:
if (lookahead == '\n') SKIP(30);
if (lookahead == '\r') ADVANCE(173);
if (lookahead != 0) ADVANCE(173);
END_STATE();
case 10:
if (lookahead == '\n') SKIP(47);
if (lookahead == '\r') ADVANCE(173);
if (lookahead != 0) ADVANCE(173);
END_STATE();
case 11:
if (lookahead == '\n') SKIP(48);
if (lookahead == '\r') ADVANCE(173);
if (lookahead != 0) ADVANCE(173);
END_STATE();
case 12:
if (lookahead == '\n') SKIP(46);
END_STATE();
case 13:
if (lookahead == '\n') SKIP(46);
if (lookahead == '\r') SKIP(12);
END_STATE();
case 14:
if (lookahead == '\n') ADVANCE(84);
if (lookahead == '(') ADVANCE(100);
if (lookahead == ':') ADVANCE(54);
if (lookahead == ';') ADVANCE(87);
if (lookahead == '\\') SKIP(17);
if (lookahead == 'e') ADVANCE(67);
if (lookahead == 'f') ADVANCE(66);
if (lookahead == 'o') ADVANCE(72);
if (lookahead == '}') ADVANCE(109);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(15);
END_STATE();
case 15:
if (lookahead == '\n') ADVANCE(84);
if (lookahead == ';') ADVANCE(87);
if (lookahead == '\\') SKIP(17);
if (lookahead == 'e') ADVANCE(67);
if (lookahead == 'f') ADVANCE(66);
if (lookahead == 'o') ADVANCE(72);
if (lookahead == '}') ADVANCE(109);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(15);
END_STATE();
case 16:
if (lookahead == '\n') SKIP(15);
END_STATE();
case 17:
if (lookahead == '\n') SKIP(15);
if (lookahead == '\r') SKIP(16);
END_STATE();
case 18:
if (lookahead == '\n') SKIP(49);
if (lookahead == '\r') ADVANCE(173);
if (lookahead != 0) ADVANCE(173);
END_STATE();
case 19:
if (lookahead == '\n') SKIP(60);
END_STATE();
case 20:
if (lookahead == '\n') SKIP(60);
if (lookahead == '\r') SKIP(19);
END_STATE();
case 21:
if (lookahead == '\n') SKIP(51);
END_STATE();
case 22:
if (lookahead == '\n') SKIP(51);
if (lookahead == '\r') SKIP(21);
END_STATE();
case 23:
if (lookahead == '\n') SKIP(61);
END_STATE();
case 24:
if (lookahead == '\n') SKIP(61);
if (lookahead == '\r') SKIP(23);
END_STATE();
case 25:
if (lookahead == '\n') SKIP(52);
END_STATE();
case 26:
if (lookahead == '\n') SKIP(52);
if (lookahead == '\r') SKIP(25);
END_STATE();
case 27:
if (lookahead == '\n') SKIP(33);
if (lookahead == '\r') ADVANCE(173);
if (lookahead != 0) ADVANCE(173);
END_STATE();
case 28:
ADVANCE_MAP(
'\n', 85,
'"', 172,
'$', 102,
'(', 100,
':', 179,
';', 87,
'[', 177,
'\\', 9,
'{', 104,
'}', 109,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(30);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 29:
ADVANCE_MAP(
'\n', 85,
'"', 172,
'$', 102,
'(', 100,
';', 87,
'[', 177,
'\\', 9,
'{', 104,
'}', 109,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(30);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 30:
ADVANCE_MAP(
'\n', 85,
'"', 172,
'$', 102,
';', 87,
'[', 177,
'\\', 9,
'{', 104,
'}', 109,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(30);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 31:
ADVANCE_MAP(
'\n', 86,
'"', 172,
'$', 102,
'(', 100,
':', 179,
';', 87,
'[', 177,
'\\', 27,
'{', 103,
'}', 109,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(33);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 32:
ADVANCE_MAP(
'\n', 86,
'"', 172,
'$', 102,
'(', 100,
';', 87,
'[', 177,
'\\', 27,
'{', 103,
'}', 109,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(33);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 33:
ADVANCE_MAP(
'\n', 86,
'"', 172,
'$', 102,
';', 87,
'[', 177,
'\\', 27,
'{', 103,
'}', 109,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(33);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 34:
ADVANCE_MAP(
'!', 120,
'"', 172,
'$', 102,
'(', 114,
'+', 118,
'-', 116,
'[', 177,
'\\', 8,
'{', 103,
'~', 119,
'F', 195,
'f', 195,
'T', 198,
't', 198,
'0', 110,
'1', 110,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(34);
if (('2' <= lookahead && lookahead <= '9')) ADVANCE(110);
if (lookahead != 0 &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ';' &&
(lookahead < '[' || ']' < lookahead) &&
lookahead != '}' &&
lookahead != '~') ADVANCE(203);
END_STATE();
case 35:
ADVANCE_MAP(
'!', 57,
'%', 127,
'&', 153,
'(', 100,
')', 101,
'*', 126,
'+', 117,
'-', 115,
'/', 123,
':', 166,
'<', 136,
'=', 58,
'>', 134,
'?', 162,
);
if (lookahead == '\\') SKIP(5);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '^') ADVANCE(154);
if (lookahead == 'e') ADVANCE(68);
if (lookahead == 'f') ADVANCE(66);
if (lookahead == 'i') ADVANCE(71);
if (lookahead == 'n') ADVANCE(63);
if (lookahead == 'o') ADVANCE(72);
if (lookahead == '{') ADVANCE(103);
if (lookahead == '|') ADVANCE(157);
if (lookahead == '}') ADVANCE(109);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(37);
END_STATE();
case 36:
ADVANCE_MAP(
'!', 57,
'%', 127,
'&', 153,
'(', 100,
')', 101,
'*', 126,
'+', 117,
'-', 115,
'/', 123,
':', 164,
'<', 136,
'=', 58,
'>', 134,
'?', 162,
);
if (lookahead == '\\') SKIP(7);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '^') ADVANCE(154);
if (lookahead == 'e') ADVANCE(74);
if (lookahead == 'i') ADVANCE(71);
if (lookahead == 'n') ADVANCE(63);
if (lookahead == '|') ADVANCE(157);
if (lookahead == '}') ADVANCE(109);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(38);
END_STATE();
case 37:
ADVANCE_MAP(
'!', 57,
'%', 127,
'&', 153,
')', 101,
'*', 126,
'+', 117,
'-', 115,
'/', 123,
':', 164,
'<', 136,
'=', 58,
'>', 134,
'?', 162,
);
if (lookahead == '\\') SKIP(5);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '^') ADVANCE(154);
if (lookahead == 'e') ADVANCE(68);
if (lookahead == 'f') ADVANCE(66);
if (lookahead == 'i') ADVANCE(71);
if (lookahead == 'n') ADVANCE(63);
if (lookahead == 'o') ADVANCE(72);
if (lookahead == '{') ADVANCE(103);
if (lookahead == '|') ADVANCE(157);
if (lookahead == '}') ADVANCE(109);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(37);
END_STATE();
case 38:
ADVANCE_MAP(
'!', 57,
'%', 127,
'&', 153,
')', 101,
'*', 126,
'+', 117,
'-', 115,
'/', 123,
':', 164,
'<', 136,
'=', 58,
'>', 134,
'?', 162,
);
if (lookahead == '\\') SKIP(7);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '^') ADVANCE(154);
if (lookahead == 'e') ADVANCE(74);
if (lookahead == 'i') ADVANCE(71);
if (lookahead == 'n') ADVANCE(63);
if (lookahead == '|') ADVANCE(157);
if (lookahead == '}') ADVANCE(109);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(38);
END_STATE();
case 39:
if (lookahead == '"') ADVANCE(172);
if (lookahead == '#') ADVANCE(88);
if (lookahead == '$') ADVANCE(102);
if (lookahead == '[') ADVANCE(177);
if (lookahead == '\\') ADVANCE(3);
if (lookahead == '{') ADVANCE(104);
if (lookahead == '}') ADVANCE(109);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(39);
if (lookahead != 0 &&
(lookahead < ' ' || '$' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ';' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 40:
ADVANCE_MAP(
'"', 172,
'$', 102,
'(', 100,
':', 179,
'[', 177,
'\\', 10,
']', 178,
'{', 104,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(47);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ':' &&
lookahead != ';' &&
lookahead != '}') ADVANCE(203);
END_STATE();
case 41:
ADVANCE_MAP(
'"', 172,
'$', 102,
'(', 100,
':', 179,
'[', 177,
'\\', 11,
']', 178,
'{', 103,
'}', 109,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(48);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ':' &&
lookahead != ';') ADVANCE(203);
END_STATE();
case 42:
if (lookahead == '"') ADVANCE(172);
if (lookahead == '$') ADVANCE(102);
if (lookahead == '(') ADVANCE(100);
if (lookahead == ':') ADVANCE(175);
if (lookahead == '[') ADVANCE(177);
if (lookahead == '\\') ADVANCE(18);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(174);
if (lookahead != 0 &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(176);
END_STATE();
case 43:
if (lookahead == '"') ADVANCE(172);
if (lookahead == '$') ADVANCE(102);
if (lookahead == '(') ADVANCE(100);
if (lookahead == '[') ADVANCE(177);
if (lookahead == '\\') ADVANCE(10);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '{') ADVANCE(104);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(47);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ';' &&
lookahead != '}') ADVANCE(203);
END_STATE();
case 44:
ADVANCE_MAP(
'"', 172,
'$', 102,
'(', 100,
'[', 177,
'\\', 11,
']', 178,
'{', 103,
'}', 109,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(48);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ';') ADVANCE(203);
END_STATE();
case 45:
if (lookahead == '"') ADVANCE(172);
if (lookahead == '$') ADVANCE(102);
if (lookahead == '(') ADVANCE(100);
if (lookahead == '[') ADVANCE(177);
if (lookahead == '\\') ADVANCE(18);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(174);
if (lookahead != 0 &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(176);
END_STATE();
case 46:
if (lookahead == '"') ADVANCE(172);
if (lookahead == '$') ADVANCE(102);
if (lookahead == '(') ADVANCE(114);
if (lookahead == '[') ADVANCE(177);
if (lookahead == '\\') SKIP(13);
if (lookahead == '{') ADVANCE(103);
if (lookahead == 'F' ||
lookahead == 'f') ADVANCE(195);
if (lookahead == 'T' ||
lookahead == 't') ADVANCE(198);
if (lookahead == '0' ||
lookahead == '1') ADVANCE(110);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(46);
if (('2' <= lookahead && lookahead <= '9')) ADVANCE(110);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ';' &&
(lookahead < '[' || ']' < lookahead) &&
lookahead != '}') ADVANCE(203);
END_STATE();
case 47:
if (lookahead == '"') ADVANCE(172);
if (lookahead == '$') ADVANCE(102);
if (lookahead == '[') ADVANCE(177);
if (lookahead == '\\') ADVANCE(10);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '{') ADVANCE(104);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(47);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ';' &&
lookahead != '}') ADVANCE(203);
END_STATE();
case 48:
if (lookahead == '"') ADVANCE(172);
if (lookahead == '$') ADVANCE(102);
if (lookahead == '[') ADVANCE(177);
if (lookahead == '\\') ADVANCE(11);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '{') ADVANCE(103);
if (lookahead == '}') ADVANCE(109);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(48);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ';') ADVANCE(203);
END_STATE();
case 49:
if (lookahead == '"') ADVANCE(172);
if (lookahead == '$') ADVANCE(102);
if (lookahead == '[') ADVANCE(177);
if (lookahead == '\\') ADVANCE(18);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(174);
if (lookahead != 0 &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(176);
END_STATE();
case 50:
if (lookahead == '"') ADVANCE(172);
if (lookahead == '(') ADVANCE(100);
if (lookahead == ')') ADVANCE(101);
if (lookahead == '\\') SKIP(22);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '{') ADVANCE(103);
if (lookahead == '}') ADVANCE(109);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(51);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '$' &&
lookahead != ';' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 51:
if (lookahead == '"') ADVANCE(172);
if (lookahead == ')') ADVANCE(101);
if (lookahead == '\\') SKIP(22);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '{') ADVANCE(103);
if (lookahead == '}') ADVANCE(109);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(51);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '$' &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ';' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 52:
if (lookahead == '$') ADVANCE(102);
if (lookahead == ':') ADVANCE(56);
if (lookahead == '\\') SKIP(26);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(52);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(98);
END_STATE();
case 53:
if (lookahead == '(') ADVANCE(100);
if (lookahead == ':') ADVANCE(179);
if (lookahead == '\\') SKIP(20);
if (lookahead == '{') ADVANCE(103);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(60);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '$' &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ':' &&
lookahead != ';' &&
(lookahead < '[' || ']' < lookahead) &&
lookahead != '}') ADVANCE(203);
END_STATE();
case 54:
if (lookahead == ':') ADVANCE(95);
END_STATE();
case 55:
if (lookahead == ':') ADVANCE(54);
if (lookahead == '\\') SKIP(24);
if (lookahead == '{') ADVANCE(103);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(61);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(97);
END_STATE();
case 56:
if (lookahead == ':') ADVANCE(99);
END_STATE();
case 57:
if (lookahead == '=') ADVANCE(143);
END_STATE();
case 58:
if (lookahead == '=') ADVANCE(141);
END_STATE();
case 59:
if (lookahead == '\\') ADVANCE(105);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(107);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(108);
END_STATE();
case 60:
if (lookahead == '\\') SKIP(20);
if (lookahead == '{') ADVANCE(103);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(60);
if (lookahead != 0 &&
(lookahead < ' ' || '"' < lookahead) &&
lookahead != '$' &&
lookahead != '(' &&
lookahead != ')' &&
lookahead != ';' &&
(lookahead < '[' || ']' < lookahead) &&
lookahead != '}') ADVANCE(203);
END_STATE();
case 61:
if (lookahead == '\\') SKIP(24);
if (lookahead == '{') ADVANCE(103);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(61);
END_STATE();
case 62:
if (lookahead == 'a') ADVANCE(70);
END_STATE();
case 63:
if (lookahead == 'e') ADVANCE(146);
if (lookahead == 'i') ADVANCE(150);
END_STATE();
case 64:
if (lookahead == 'e') ADVANCE(171);
END_STATE();
case 65:
if (lookahead == 'f') ADVANCE(168);
END_STATE();
case 66:
if (lookahead == 'i') ADVANCE(73);
END_STATE();
case 67:
if (lookahead == 'l') ADVANCE(75);
END_STATE();
case 68:
if (lookahead == 'l') ADVANCE(75);
if (lookahead == 'q') ADVANCE(144);
END_STATE();
case 69:
if (lookahead == 'l') ADVANCE(76);
END_STATE();
case 70:
if (lookahead == 'l') ADVANCE(69);
END_STATE();
case 71:
if (lookahead == 'n') ADVANCE(148);
END_STATE();
case 72:
if (lookahead == 'n') ADVANCE(90);
END_STATE();
case 73:
if (lookahead == 'n') ADVANCE(62);
END_STATE();
case 74:
if (lookahead == 'q') ADVANCE(144);
END_STATE();
case 75:
if (lookahead == 's') ADVANCE(64);
END_STATE();
case 76:
if (lookahead == 'y') ADVANCE(92);
END_STATE();
case 77:
if (lookahead == '}') ADVANCE(94);
END_STATE();
case 78:
if (eof) ADVANCE(82);
if (lookahead == '\n') SKIP(81);
END_STATE();
case 79:
if (eof) ADVANCE(82);
if (lookahead == '\n') SKIP(81);
if (lookahead == '\r') SKIP(78);
END_STATE();
case 80:
if (eof) ADVANCE(82);
ADVANCE_MAP(
'\n', 83,
'"', 172,
'#', 88,
'$', 102,
';', 87,
'[', 177,
'\\', 2,
'{', 104,
'}', 109,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(80);
if (lookahead != 0 &&
(lookahead < ' ' || '$' < lookahead) &&
lookahead != '(' &&
lookahead != ')' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(203);
END_STATE();
case 81:
if (eof) ADVANCE(82);
ADVANCE_MAP(
'!', 120,
'"', 172,
'#', 88,
'$', 102,
'%', 128,
'&', 152,
'(', 114,
')', 101,
'*', 125,
'+', 118,
'-', 116,
'/', 124,
':', 167,
';', 87,
'<', 135,
'=', 180,
'>', 133,
'?', 163,
'F', 195,
'[', 177,
);
if (lookahead == '\\') SKIP(79);
if (lookahead == ']') ADVANCE(178);
if (lookahead == '^') ADVANCE(155);
if (lookahead == 'e') ADVANCE(186);
if (lookahead == 'f') ADVANCE(185);
if (lookahead == 'i') ADVANCE(189);
if (lookahead == 'n') ADVANCE(182);
if (lookahead == 'o') ADVANCE(190);
if (lookahead == '{') ADVANCE(104);
if (lookahead == '|') ADVANCE(156);
if (lookahead == '}') ADVANCE(109);
if (lookahead == '~') ADVANCE(119);
if (lookahead == 'T' ||
lookahead == 't') ADVANCE(198);
if (lookahead == '0' ||
lookahead == '1') ADVANCE(110);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(81);
if (('2' <= lookahead && lookahead <= '9')) ADVANCE(110);
if (lookahead != 0) ADVANCE(203);
END_STATE();
case 82:
ACCEPT_TOKEN(ts_builtin_sym_end);
END_STATE();
case 83:
ACCEPT_TOKEN(anon_sym_LF);
if (lookahead == '\n') ADVANCE(83);
if (lookahead == '\\') ADVANCE(2);
END_STATE();
case 84:
ACCEPT_TOKEN(anon_sym_LF);
if (lookahead == '\n') ADVANCE(84);
END_STATE();
case 85:
ACCEPT_TOKEN(anon_sym_LF);
if (lookahead == '\n') ADVANCE(85);
if (lookahead == '\\') ADVANCE(9);
END_STATE();
case 86:
ACCEPT_TOKEN(anon_sym_LF);
if (lookahead == '\n') ADVANCE(86);
if (lookahead == '\\') ADVANCE(27);
END_STATE();
case 87:
ACCEPT_TOKEN(anon_sym_SEMI);
END_STATE();
case 88:
ACCEPT_TOKEN(sym_comment);
if (lookahead == '\t' ||
(0x0b <= lookahead && lookahead <= '\r') ||
(' ' <= lookahead && lookahead <= '"') ||
lookahead == '$' ||
lookahead == '(' ||
lookahead == ')' ||
lookahead == ';' ||
('[' <= lookahead && lookahead <= ']') ||
lookahead == '{' ||
lookahead == '}') ADVANCE(89);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead)) ADVANCE(88);
END_STATE();
case 89:
ACCEPT_TOKEN(sym_comment);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(89);
END_STATE();
case 90:
ACCEPT_TOKEN(anon_sym_on);
END_STATE();
case 91:
ACCEPT_TOKEN(anon_sym_on);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 92:
ACCEPT_TOKEN(anon_sym_finally);
END_STATE();
case 93:
ACCEPT_TOKEN(anon_sym_finally);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 94:
ACCEPT_TOKEN(sym_unpack);
END_STATE();
case 95:
ACCEPT_TOKEN(anon_sym_COLON_COLON);
END_STATE();
case 96:
ACCEPT_TOKEN(anon_sym_COLON_COLON);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 97:
ACCEPT_TOKEN(sym__ident_imm);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(97);
END_STATE();
case 98:
ACCEPT_TOKEN(sym__ident);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(98);
END_STATE();
case 99:
ACCEPT_TOKEN(anon_sym_COLON_COLON2);
END_STATE();
case 100:
ACCEPT_TOKEN(anon_sym_LPAREN);
END_STATE();
case 101:
ACCEPT_TOKEN(anon_sym_RPAREN);
END_STATE();
case 102:
ACCEPT_TOKEN(anon_sym_DOLLAR);
END_STATE();
case 103:
ACCEPT_TOKEN(anon_sym_LBRACE);
END_STATE();
case 104:
ACCEPT_TOKEN(anon_sym_LBRACE);
if (lookahead == '*') ADVANCE(77);
END_STATE();
case 105:
ACCEPT_TOKEN(aux_sym_variable_substitution_token1);
if (lookahead == '\n') ADVANCE(107);
if (lookahead == '\r') ADVANCE(106);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(108);
END_STATE();
case 106:
ACCEPT_TOKEN(aux_sym_variable_substitution_token1);
if (lookahead == '\n') ADVANCE(107);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(108);
END_STATE();
case 107:
ACCEPT_TOKEN(aux_sym_variable_substitution_token1);
if (lookahead == '\\') ADVANCE(105);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(107);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(108);
END_STATE();
case 108:
ACCEPT_TOKEN(aux_sym_variable_substitution_token1);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(108);
END_STATE();
case 109:
ACCEPT_TOKEN(anon_sym_RBRACE);
END_STATE();
case 110:
ACCEPT_TOKEN(sym__number);
if (lookahead == '.') ADVANCE(201);
if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(194);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(110);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 111:
ACCEPT_TOKEN(sym__number);
if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(194);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(111);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 112:
ACCEPT_TOKEN(sym__number);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 113:
ACCEPT_TOKEN(sym__boolean);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 114:
ACCEPT_TOKEN(anon_sym_LPAREN2);
END_STATE();
case 115:
ACCEPT_TOKEN(anon_sym_DASH);
END_STATE();
case 116:
ACCEPT_TOKEN(anon_sym_DASH);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 117:
ACCEPT_TOKEN(anon_sym_PLUS);
END_STATE();
case 118:
ACCEPT_TOKEN(anon_sym_PLUS);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 119:
ACCEPT_TOKEN(anon_sym_TILDE);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 120:
ACCEPT_TOKEN(anon_sym_BANG);
END_STATE();
case 121:
ACCEPT_TOKEN(anon_sym_STAR_STAR);
END_STATE();
case 122:
ACCEPT_TOKEN(anon_sym_STAR_STAR);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 123:
ACCEPT_TOKEN(anon_sym_SLASH);
END_STATE();
case 124:
ACCEPT_TOKEN(anon_sym_SLASH);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 125:
ACCEPT_TOKEN(anon_sym_STAR);
if (lookahead == '*') ADVANCE(122);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 126:
ACCEPT_TOKEN(anon_sym_STAR);
if (lookahead == '*') ADVANCE(121);
END_STATE();
case 127:
ACCEPT_TOKEN(anon_sym_PERCENT);
END_STATE();
case 128:
ACCEPT_TOKEN(anon_sym_PERCENT);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 129:
ACCEPT_TOKEN(anon_sym_LT_LT);
END_STATE();
case 130:
ACCEPT_TOKEN(anon_sym_LT_LT);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 131:
ACCEPT_TOKEN(anon_sym_GT_GT);
END_STATE();
case 132:
ACCEPT_TOKEN(anon_sym_GT_GT);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 133:
ACCEPT_TOKEN(anon_sym_GT);
if (lookahead == '=') ADVANCE(138);
if (lookahead == '>') ADVANCE(132);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 134:
ACCEPT_TOKEN(anon_sym_GT);
if (lookahead == '=') ADVANCE(137);
if (lookahead == '>') ADVANCE(131);
END_STATE();
case 135:
ACCEPT_TOKEN(anon_sym_LT);
if (lookahead == '<') ADVANCE(130);
if (lookahead == '=') ADVANCE(140);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 136:
ACCEPT_TOKEN(anon_sym_LT);
if (lookahead == '<') ADVANCE(129);
if (lookahead == '=') ADVANCE(139);
END_STATE();
case 137:
ACCEPT_TOKEN(anon_sym_GT_EQ);
END_STATE();
case 138:
ACCEPT_TOKEN(anon_sym_GT_EQ);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 139:
ACCEPT_TOKEN(anon_sym_LT_EQ);
END_STATE();
case 140:
ACCEPT_TOKEN(anon_sym_LT_EQ);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 141:
ACCEPT_TOKEN(anon_sym_EQ_EQ);
END_STATE();
case 142:
ACCEPT_TOKEN(anon_sym_EQ_EQ);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 143:
ACCEPT_TOKEN(anon_sym_BANG_EQ);
END_STATE();
case 144:
ACCEPT_TOKEN(anon_sym_eq);
END_STATE();
case 145:
ACCEPT_TOKEN(anon_sym_eq);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 146:
ACCEPT_TOKEN(anon_sym_ne);
END_STATE();
case 147:
ACCEPT_TOKEN(anon_sym_ne);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 148:
ACCEPT_TOKEN(anon_sym_in);
END_STATE();
case 149:
ACCEPT_TOKEN(anon_sym_in);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 150:
ACCEPT_TOKEN(anon_sym_ni);
END_STATE();
case 151:
ACCEPT_TOKEN(anon_sym_ni);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 152:
ACCEPT_TOKEN(anon_sym_AMP);
if (lookahead == '&') ADVANCE(159);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 153:
ACCEPT_TOKEN(anon_sym_AMP);
if (lookahead == '&') ADVANCE(158);
END_STATE();
case 154:
ACCEPT_TOKEN(anon_sym_CARET);
END_STATE();
case 155:
ACCEPT_TOKEN(anon_sym_CARET);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 156:
ACCEPT_TOKEN(anon_sym_PIPE);
if (lookahead == '|') ADVANCE(161);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 157:
ACCEPT_TOKEN(anon_sym_PIPE);
if (lookahead == '|') ADVANCE(160);
END_STATE();
case 158:
ACCEPT_TOKEN(anon_sym_AMP_AMP);
END_STATE();
case 159:
ACCEPT_TOKEN(anon_sym_AMP_AMP);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 160:
ACCEPT_TOKEN(anon_sym_PIPE_PIPE);
END_STATE();
case 161:
ACCEPT_TOKEN(anon_sym_PIPE_PIPE);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 162:
ACCEPT_TOKEN(anon_sym_QMARK);
END_STATE();
case 163:
ACCEPT_TOKEN(anon_sym_QMARK);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 164:
ACCEPT_TOKEN(anon_sym_COLON);
END_STATE();
case 165:
ACCEPT_TOKEN(anon_sym_COLON);
if (lookahead == ':') ADVANCE(96);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 166:
ACCEPT_TOKEN(anon_sym_COLON);
if (lookahead == ':') ADVANCE(95);
END_STATE();
case 167:
ACCEPT_TOKEN(anon_sym_COLON);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 168:
ACCEPT_TOKEN(anon_sym_elseif);
END_STATE();
case 169:
ACCEPT_TOKEN(anon_sym_elseif);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 170:
ACCEPT_TOKEN(anon_sym_else);
if (lookahead == 'i') ADVANCE(184);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 171:
ACCEPT_TOKEN(anon_sym_else);
if (lookahead == 'i') ADVANCE(65);
END_STATE();
case 172:
ACCEPT_TOKEN(anon_sym_DQUOTE);
END_STATE();
case 173:
ACCEPT_TOKEN(sym_escaped_character);
END_STATE();
case 174:
ACCEPT_TOKEN(sym__quoted_word_content);
if (lookahead == '"') ADVANCE(172);
if (lookahead == '$') ADVANCE(102);
if (lookahead == '[') ADVANCE(177);
if (lookahead == '\\') ADVANCE(18);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(174);
if (lookahead != 0 &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(176);
END_STATE();
case 175:
ACCEPT_TOKEN(sym__quoted_word_content);
if (lookahead == ':') ADVANCE(95);
if (lookahead != 0 &&
lookahead != '"' &&
lookahead != '$' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(176);
END_STATE();
case 176:
ACCEPT_TOKEN(sym__quoted_word_content);
if (lookahead != 0 &&
lookahead != '"' &&
lookahead != '$' &&
(lookahead < '[' || ']' < lookahead)) ADVANCE(176);
END_STATE();
case 177:
ACCEPT_TOKEN(anon_sym_LBRACK);
END_STATE();
case 178:
ACCEPT_TOKEN(anon_sym_RBRACK);
END_STATE();
case 179:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == ':') ADVANCE(96);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 180:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == '=') ADVANCE(142);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 181:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'a') ADVANCE(188);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 182:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'e') ADVANCE(147);
if (lookahead == 'i') ADVANCE(151);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 183:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'e') ADVANCE(170);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 184:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'f') ADVANCE(169);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 185:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'i') ADVANCE(191);
if (lookahead == 'A' ||
lookahead == 'a') ADVANCE(197);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 186:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'l') ADVANCE(192);
if (lookahead == 'q') ADVANCE(145);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 187:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'l') ADVANCE(193);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 188:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'l') ADVANCE(187);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 189:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'n') ADVANCE(149);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 190:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'n') ADVANCE(91);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 191:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'n') ADVANCE(181);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 192:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 's') ADVANCE(183);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 193:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'y') ADVANCE(93);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 194:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == '+' ||
lookahead == '-') ADVANCE(202);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 195:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'A' ||
lookahead == 'a') ADVANCE(197);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 196:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(113);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 197:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'L' ||
lookahead == 'l') ADVANCE(199);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 198:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'R' ||
lookahead == 'r') ADVANCE(200);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 199:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'S' ||
lookahead == 's') ADVANCE(196);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 200:
ACCEPT_TOKEN(sym_simple_word);
if (lookahead == 'U' ||
lookahead == 'u') ADVANCE(196);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 201:
ACCEPT_TOKEN(sym_simple_word);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(111);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 202:
ACCEPT_TOKEN(sym_simple_word);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(112);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
case 203:
ACCEPT_TOKEN(sym_simple_word);
if ((!eof && set_contains(sym_simple_word_character_set_1, 9, lookahead))) ADVANCE(203);
END_STATE();
default:
return false;
}
}
static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) {
START_LEXER();
eof = lexer->eof(lexer);
switch (state) {
case 0:
if (lookahead == '\\') SKIP(1);
if (lookahead == 'c') ADVANCE(2);
if (lookahead == 'e') ADVANCE(3);
if (lookahead == 'f') ADVANCE(4);
if (lookahead == 'g') ADVANCE(5);
if (lookahead == 'i') ADVANCE(6);
if (lookahead == 'n') ADVANCE(7);
if (lookahead == 'p') ADVANCE(8);
if (lookahead == 'r') ADVANCE(9);
if (lookahead == 's') ADVANCE(10);
if (lookahead == 't') ADVANCE(11);
if (lookahead == 'w') ADVANCE(12);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(0);
END_STATE();
case 1:
if (lookahead == '\n') SKIP(0);
if (lookahead == '\r') SKIP(13);
END_STATE();
case 2:
if (lookahead == 'a') ADVANCE(14);
END_STATE();
case 3:
if (lookahead == 'r') ADVANCE(15);
if (lookahead == 'x') ADVANCE(16);
END_STATE();
case 4:
if (lookahead == 'o') ADVANCE(17);
END_STATE();
case 5:
if (lookahead == 'l') ADVANCE(18);
END_STATE();
case 6:
if (lookahead == 'f') ADVANCE(19);
END_STATE();
case 7:
if (lookahead == 'a') ADVANCE(20);
END_STATE();
case 8:
if (lookahead == 'r') ADVANCE(21);
END_STATE();
case 9:
if (lookahead == 'e') ADVANCE(22);
END_STATE();
case 10:
if (lookahead == 'e') ADVANCE(23);
END_STATE();
case 11:
if (lookahead == 'r') ADVANCE(24);
END_STATE();
case 12:
if (lookahead == 'h') ADVANCE(25);
END_STATE();
case 13:
if (lookahead == '\n') SKIP(0);
END_STATE();
case 14:
if (lookahead == 't') ADVANCE(26);
END_STATE();
case 15:
if (lookahead == 'r') ADVANCE(27);
END_STATE();
case 16:
if (lookahead == 'p') ADVANCE(28);
END_STATE();
case 17:
if (lookahead == 'r') ADVANCE(29);
END_STATE();
case 18:
if (lookahead == 'o') ADVANCE(30);
END_STATE();
case 19:
ACCEPT_TOKEN(anon_sym_if);
END_STATE();
case 20:
if (lookahead == 'm') ADVANCE(31);
END_STATE();
case 21:
if (lookahead == 'o') ADVANCE(32);
END_STATE();
case 22:
if (lookahead == 'g') ADVANCE(33);
END_STATE();
case 23:
if (lookahead == 't') ADVANCE(34);
END_STATE();
case 24:
if (lookahead == 'y') ADVANCE(35);
END_STATE();
case 25:
if (lookahead == 'i') ADVANCE(36);
END_STATE();
case 26:
if (lookahead == 'c') ADVANCE(37);
END_STATE();
case 27:
if (lookahead == 'o') ADVANCE(38);
END_STATE();
case 28:
if (lookahead == 'r') ADVANCE(39);
END_STATE();
case 29:
if (lookahead == 'e') ADVANCE(40);
END_STATE();
case 30:
if (lookahead == 'b') ADVANCE(41);
END_STATE();
case 31:
if (lookahead == 'e') ADVANCE(42);
END_STATE();
case 32:
if (lookahead == 'c') ADVANCE(43);
END_STATE();
case 33:
if (lookahead == 'e') ADVANCE(44);
END_STATE();
case 34:
ACCEPT_TOKEN(anon_sym_set);
END_STATE();
case 35:
ACCEPT_TOKEN(anon_sym_try);
END_STATE();
case 36:
if (lookahead == 'l') ADVANCE(45);
END_STATE();
case 37:
if (lookahead == 'h') ADVANCE(46);
END_STATE();
case 38:
if (lookahead == 'r') ADVANCE(47);
END_STATE();
case 39:
ACCEPT_TOKEN(anon_sym_expr);
END_STATE();
case 40:
if (lookahead == 'a') ADVANCE(48);
END_STATE();
case 41:
if (lookahead == 'a') ADVANCE(49);
END_STATE();
case 42:
if (lookahead == 's') ADVANCE(50);
END_STATE();
case 43:
ACCEPT_TOKEN(anon_sym_proc);
END_STATE();
case 44:
if (lookahead == 'x') ADVANCE(51);
END_STATE();
case 45:
if (lookahead == 'e') ADVANCE(52);
END_STATE();
case 46:
ACCEPT_TOKEN(anon_sym_catch);
END_STATE();
case 47:
ACCEPT_TOKEN(anon_sym_error);
END_STATE();
case 48:
if (lookahead == 'c') ADVANCE(53);
END_STATE();
case 49:
if (lookahead == 'l') ADVANCE(54);
END_STATE();
case 50:
if (lookahead == 'p') ADVANCE(55);
END_STATE();
case 51:
if (lookahead == 'p') ADVANCE(56);
END_STATE();
case 52:
ACCEPT_TOKEN(anon_sym_while);
END_STATE();
case 53:
if (lookahead == 'h') ADVANCE(57);
END_STATE();
case 54:
ACCEPT_TOKEN(anon_sym_global);
END_STATE();
case 55:
if (lookahead == 'a') ADVANCE(58);
END_STATE();
case 56:
ACCEPT_TOKEN(anon_sym_regexp);
END_STATE();
case 57:
ACCEPT_TOKEN(anon_sym_foreach);
END_STATE();
case 58:
if (lookahead == 'c') ADVANCE(59);
END_STATE();
case 59:
if (lookahead == 'e') ADVANCE(60);
END_STATE();
case 60:
ACCEPT_TOKEN(anon_sym_namespace);
END_STATE();
default:
return false;
}
}
static const TSLexMode ts_lex_modes[STATE_COUNT] = {
[0] = {.lex_state = 0, .external_lex_state = 1},
[1] = {.lex_state = 80},
[2] = {.lex_state = 80},
[3] = {.lex_state = 80},
[4] = {.lex_state = 80},
[5] = {.lex_state = 80},
[6] = {.lex_state = 80},
[7] = {.lex_state = 80},
[8] = {.lex_state = 80},
[9] = {.lex_state = 80},
[10] = {.lex_state = 80},
[11] = {.lex_state = 80},
[12] = {.lex_state = 80},
[13] = {.lex_state = 80},
[14] = {.lex_state = 80},
[15] = {.lex_state = 39},
[16] = {.lex_state = 39},
[17] = {.lex_state = 39},
[18] = {.lex_state = 39},
[19] = {.lex_state = 39},
[20] = {.lex_state = 39},
[21] = {.lex_state = 39},
[22] = {.lex_state = 39},
[23] = {.lex_state = 39},
[24] = {.lex_state = 39},
[25] = {.lex_state = 39},
[26] = {.lex_state = 39},
[27] = {.lex_state = 39},
[28] = {.lex_state = 39},
[29] = {.lex_state = 39},
[30] = {.lex_state = 35},
[31] = {.lex_state = 35},
[32] = {.lex_state = 35},
[33] = {.lex_state = 35},
[34] = {.lex_state = 35},
[35] = {.lex_state = 36},
[36] = {.lex_state = 35},
[37] = {.lex_state = 36},
[38] = {.lex_state = 36},
[39] = {.lex_state = 36},
[40] = {.lex_state = 36},
[41] = {.lex_state = 36},
[42] = {.lex_state = 36},
[43] = {.lex_state = 36},
[44] = {.lex_state = 36},
[45] = {.lex_state = 36},
[46] = {.lex_state = 36},
[47] = {.lex_state = 36},
[48] = {.lex_state = 36},
[49] = {.lex_state = 36},
[50] = {.lex_state = 36},
[51] = {.lex_state = 36},
[52] = {.lex_state = 36},
[53] = {.lex_state = 36},
[54] = {.lex_state = 36},
[55] = {.lex_state = 36},
[56] = {.lex_state = 36},
[57] = {.lex_state = 36},
[58] = {.lex_state = 36},
[59] = {.lex_state = 36},
[60] = {.lex_state = 36},
[61] = {.lex_state = 36},
[62] = {.lex_state = 36},
[63] = {.lex_state = 36},
[64] = {.lex_state = 35},
[65] = {.lex_state = 35},
[66] = {.lex_state = 35},
[67] = {.lex_state = 35},
[68] = {.lex_state = 35},
[69] = {.lex_state = 35},
[70] = {.lex_state = 35},
[71] = {.lex_state = 80},
[72] = {.lex_state = 34},
[73] = {.lex_state = 34},
[74] = {.lex_state = 34},
[75] = {.lex_state = 34},
[76] = {.lex_state = 80},
[77] = {.lex_state = 34},
[78] = {.lex_state = 34},
[79] = {.lex_state = 34},
[80] = {.lex_state = 34},
[81] = {.lex_state = 34},
[82] = {.lex_state = 34},
[83] = {.lex_state = 34},
[84] = {.lex_state = 34},
[85] = {.lex_state = 34},
[86] = {.lex_state = 34},
[87] = {.lex_state = 34},
[88] = {.lex_state = 34},
[89] = {.lex_state = 34},
[90] = {.lex_state = 34},
[91] = {.lex_state = 34},
[92] = {.lex_state = 34},
[93] = {.lex_state = 34},
[94] = {.lex_state = 34},
[95] = {.lex_state = 34},
[96] = {.lex_state = 29},
[97] = {.lex_state = 29},
[98] = {.lex_state = 32},
[99] = {.lex_state = 29},
[100] = {.lex_state = 29},
[101] = {.lex_state = 28, .external_lex_state = 2},
[102] = {.lex_state = 28, .external_lex_state = 2},
[103] = {.lex_state = 43},
[104] = {.lex_state = 28, .external_lex_state = 2},
[105] = {.lex_state = 28, .external_lex_state = 2},
[106] = {.lex_state = 28, .external_lex_state = 2},
[107] = {.lex_state = 43},
[108] = {.lex_state = 32},
[109] = {.lex_state = 29, .external_lex_state = 2},
[110] = {.lex_state = 43},
[111] = {.lex_state = 43},
[112] = {.lex_state = 44},
[113] = {.lex_state = 43},
[114] = {.lex_state = 43},
[115] = {.lex_state = 32},
[116] = {.lex_state = 29},
[117] = {.lex_state = 40, .external_lex_state = 2},
[118] = {.lex_state = 29},
[119] = {.lex_state = 31},
[120] = {.lex_state = 44},
[121] = {.lex_state = 28, .external_lex_state = 2},
[122] = {.lex_state = 40, .external_lex_state = 2},
[123] = {.lex_state = 40, .external_lex_state = 2},
[124] = {.lex_state = 29, .external_lex_state = 2},
[125] = {.lex_state = 44},
[126] = {.lex_state = 44},
[127] = {.lex_state = 40, .external_lex_state = 2},
[128] = {.lex_state = 31},
[129] = {.lex_state = 44},
[130] = {.lex_state = 44},
[131] = {.lex_state = 29},
[132] = {.lex_state = 44},
[133] = {.lex_state = 44},
[134] = {.lex_state = 31},
[135] = {.lex_state = 40, .external_lex_state = 2},
[136] = {.lex_state = 29},
[137] = {.lex_state = 44},
[138] = {.lex_state = 44},
[139] = {.lex_state = 31},
[140] = {.lex_state = 31},
[141] = {.lex_state = 29, .external_lex_state = 2},
[142] = {.lex_state = 29, .external_lex_state = 2},
[143] = {.lex_state = 44},
[144] = {.lex_state = 29},
[145] = {.lex_state = 44},
[146] = {.lex_state = 29, .external_lex_state = 2},
[147] = {.lex_state = 43},
[148] = {.lex_state = 43},
[149] = {.lex_state = 43},
[150] = {.lex_state = 43},
[151] = {.lex_state = 29},
[152] = {.lex_state = 29, .external_lex_state = 2},
[153] = {.lex_state = 43},
[154] = {.lex_state = 43},
[155] = {.lex_state = 46},
[156] = {.lex_state = 43},
[157] = {.lex_state = 43},
[158] = {.lex_state = 29, .external_lex_state = 2},
[159] = {.lex_state = 43},
[160] = {.lex_state = 43},
[161] = {.lex_state = 43},
[162] = {.lex_state = 43},
[163] = {.lex_state = 43},
[164] = {.lex_state = 43},
[165] = {.lex_state = 44},
[166] = {.lex_state = 44},
[167] = {.lex_state = 46},
[168] = {.lex_state = 43},
[169] = {.lex_state = 43},
[170] = {.lex_state = 29, .external_lex_state = 2},
[171] = {.lex_state = 43},
[172] = {.lex_state = 43, .external_lex_state = 2},
[173] = {.lex_state = 14, .external_lex_state = 2},
[174] = {.lex_state = 43},
[175] = {.lex_state = 41, .external_lex_state = 2},
[176] = {.lex_state = 41, .external_lex_state = 2},
[177] = {.lex_state = 41, .external_lex_state = 2},
[178] = {.lex_state = 14, .external_lex_state = 2},
[179] = {.lex_state = 14, .external_lex_state = 2},
[180] = {.lex_state = 41, .external_lex_state = 2},
[181] = {.lex_state = 46},
[182] = {.lex_state = 46},
[183] = {.lex_state = 41, .external_lex_state = 2},
[184] = {.lex_state = 43},
[185] = {.lex_state = 29},
[186] = {.lex_state = 46},
[187] = {.lex_state = 14, .external_lex_state = 2},
[188] = {.lex_state = 29, .external_lex_state = 2},
[189] = {.lex_state = 46},
[190] = {.lex_state = 46},
[191] = {.lex_state = 43},
[192] = {.lex_state = 14, .external_lex_state = 2},
[193] = {.lex_state = 43},
[194] = {.lex_state = 43},
[195] = {.lex_state = 43},
[196] = {.lex_state = 43},
[197] = {.lex_state = 46},
[198] = {.lex_state = 43},
[199] = {.lex_state = 43},
[200] = {.lex_state = 44},
[201] = {.lex_state = 44},
[202] = {.lex_state = 44},
[203] = {.lex_state = 44},
[204] = {.lex_state = 44},
[205] = {.lex_state = 43},
[206] = {.lex_state = 14, .external_lex_state = 2},
[207] = {.lex_state = 43},
[208] = {.lex_state = 44},
[209] = {.lex_state = 44},
[210] = {.lex_state = 43, .external_lex_state = 2},
[211] = {.lex_state = 41},
[212] = {.lex_state = 44},
[213] = {.lex_state = 43},
[214] = {.lex_state = 43},
[215] = {.lex_state = 29, .external_lex_state = 2},
[216] = {.lex_state = 29, .external_lex_state = 2},
[217] = {.lex_state = 41},
[218] = {.lex_state = 41},
[219] = {.lex_state = 43},
[220] = {.lex_state = 31},
[221] = {.lex_state = 29, .external_lex_state = 2},
[222] = {.lex_state = 43, .external_lex_state = 2},
[223] = {.lex_state = 41},
[224] = {.lex_state = 44},
[225] = {.lex_state = 40},
[226] = {.lex_state = 40},
[227] = {.lex_state = 40},
[228] = {.lex_state = 40, .external_lex_state = 2},
[229] = {.lex_state = 40},
[230] = {.lex_state = 43, .external_lex_state = 2},
[231] = {.lex_state = 40},
[232] = {.lex_state = 44},
[233] = {.lex_state = 29, .external_lex_state = 2},
[234] = {.lex_state = 44},
[235] = {.lex_state = 44},
[236] = {.lex_state = 35, .external_lex_state = 2},
[237] = {.lex_state = 35, .external_lex_state = 2},
[238] = {.lex_state = 35, .external_lex_state = 2},
[239] = {.lex_state = 41},
[240] = {.lex_state = 44},
[241] = {.lex_state = 35, .external_lex_state = 2},
[242] = {.lex_state = 44},
[243] = {.lex_state = 44},
[244] = {.lex_state = 44},
[245] = {.lex_state = 44},
[246] = {.lex_state = 44},
[247] = {.lex_state = 44},
[248] = {.lex_state = 44},
[249] = {.lex_state = 44},
[250] = {.lex_state = 44},
[251] = {.lex_state = 44},
[252] = {.lex_state = 44},
[253] = {.lex_state = 44},
[254] = {.lex_state = 44},
[255] = {.lex_state = 44},
[256] = {.lex_state = 44},
[257] = {.lex_state = 44},
[258] = {.lex_state = 44},
[259] = {.lex_state = 44},
[260] = {.lex_state = 44},
[261] = {.lex_state = 44},
[262] = {.lex_state = 29, .external_lex_state = 2},
[263] = {.lex_state = 29, .external_lex_state = 2},
[264] = {.lex_state = 44},
[265] = {.lex_state = 44},
[266] = {.lex_state = 44},
[267] = {.lex_state = 44},
[268] = {.lex_state = 29, .external_lex_state = 2},
[269] = {.lex_state = 44},
[270] = {.lex_state = 44},
[271] = {.lex_state = 44},
[272] = {.lex_state = 44},
[273] = {.lex_state = 44},
[274] = {.lex_state = 44},
[275] = {.lex_state = 44},
[276] = {.lex_state = 29, .external_lex_state = 2},
[277] = {.lex_state = 44},
[278] = {.lex_state = 44},
[279] = {.lex_state = 35, .external_lex_state = 2},
[280] = {.lex_state = 29},
[281] = {.lex_state = 14, .external_lex_state = 2},
[282] = {.lex_state = 14, .external_lex_state = 2},
[283] = {.lex_state = 14, .external_lex_state = 2},
[284] = {.lex_state = 44, .external_lex_state = 2},
[285] = {.lex_state = 44},
[286] = {.lex_state = 44, .external_lex_state = 2},
[287] = {.lex_state = 41, .external_lex_state = 2},
[288] = {.lex_state = 44},
[289] = {.lex_state = 29},
[290] = {.lex_state = 43, .external_lex_state = 2},
[291] = {.lex_state = 43, .external_lex_state = 2},
[292] = {.lex_state = 43, .external_lex_state = 2},
[293] = {.lex_state = 44},
[294] = {.lex_state = 44},
[295] = {.lex_state = 29},
[296] = {.lex_state = 43},
[297] = {.lex_state = 43, .external_lex_state = 2},
[298] = {.lex_state = 43, .external_lex_state = 2},
[299] = {.lex_state = 44},
[300] = {.lex_state = 43},
[301] = {.lex_state = 14, .external_lex_state = 2},
[302] = {.lex_state = 29},
[303] = {.lex_state = 29},
[304] = {.lex_state = 43, .external_lex_state = 2},
[305] = {.lex_state = 14, .external_lex_state = 2},
[306] = {.lex_state = 43},
[307] = {.lex_state = 42},
[308] = {.lex_state = 14, .external_lex_state = 2},
[309] = {.lex_state = 43, .external_lex_state = 2},
[310] = {.lex_state = 43, .external_lex_state = 2},
[311] = {.lex_state = 43},
[312] = {.lex_state = 32},
[313] = {.lex_state = 42},
[314] = {.lex_state = 43, .external_lex_state = 2},
[315] = {.lex_state = 43, .external_lex_state = 2},
[316] = {.lex_state = 14, .external_lex_state = 2},
[317] = {.lex_state = 43, .external_lex_state = 2},
[318] = {.lex_state = 43, .external_lex_state = 2},
[319] = {.lex_state = 41},
[320] = {.lex_state = 43, .external_lex_state = 2},
[321] = {.lex_state = 14, .external_lex_state = 2},
[322] = {.lex_state = 14, .external_lex_state = 2},
[323] = {.lex_state = 42},
[324] = {.lex_state = 42},
[325] = {.lex_state = 42},
[326] = {.lex_state = 44, .external_lex_state = 2},
[327] = {.lex_state = 44, .external_lex_state = 2},
[328] = {.lex_state = 43, .external_lex_state = 2},
[329] = {.lex_state = 40},
[330] = {.lex_state = 35, .external_lex_state = 2},
[331] = {.lex_state = 43, .external_lex_state = 2},
[332] = {.lex_state = 35, .external_lex_state = 2},
[333] = {.lex_state = 43},
[334] = {.lex_state = 43, .external_lex_state = 2},
[335] = {.lex_state = 43},
[336] = {.lex_state = 44, .external_lex_state = 2},
[337] = {.lex_state = 43},
[338] = {.lex_state = 14, .external_lex_state = 2},
[339] = {.lex_state = 49},
[340] = {.lex_state = 43},
[341] = {.lex_state = 35, .external_lex_state = 2},
[342] = {.lex_state = 44, .external_lex_state = 2},
[343] = {.lex_state = 44, .external_lex_state = 2},
[344] = {.lex_state = 43},
[345] = {.lex_state = 44, .external_lex_state = 2},
[346] = {.lex_state = 14, .external_lex_state = 2},
[347] = {.lex_state = 49},
[348] = {.lex_state = 14},
[349] = {.lex_state = 49},
[350] = {.lex_state = 43},
[351] = {.lex_state = 44, .external_lex_state = 2},
[352] = {.lex_state = 14},
[353] = {.lex_state = 44, .external_lex_state = 2},
[354] = {.lex_state = 49},
[355] = {.lex_state = 43},
[356] = {.lex_state = 49},
[357] = {.lex_state = 43},
[358] = {.lex_state = 14, .external_lex_state = 2},
[359] = {.lex_state = 44, .external_lex_state = 2},
[360] = {.lex_state = 35, .external_lex_state = 2},
[361] = {.lex_state = 49},
[362] = {.lex_state = 49},
[363] = {.lex_state = 43},
[364] = {.lex_state = 49},
[365] = {.lex_state = 44, .external_lex_state = 2},
[366] = {.lex_state = 49},
[367] = {.lex_state = 49},
[368] = {.lex_state = 49},
[369] = {.lex_state = 49},
[370] = {.lex_state = 49},
[371] = {.lex_state = 49},
[372] = {.lex_state = 14},
[373] = {.lex_state = 14, .external_lex_state = 2},
[374] = {.lex_state = 14, .external_lex_state = 2},
[375] = {.lex_state = 49},
[376] = {.lex_state = 44, .external_lex_state = 2},
[377] = {.lex_state = 43},
[378] = {.lex_state = 43, .external_lex_state = 2},
[379] = {.lex_state = 43},
[380] = {.lex_state = 43, .external_lex_state = 2},
[381] = {.lex_state = 49},
[382] = {.lex_state = 43},
[383] = {.lex_state = 43},
[384] = {.lex_state = 14, .external_lex_state = 2},
[385] = {.lex_state = 14},
[386] = {.lex_state = 44, .external_lex_state = 2},
[387] = {.lex_state = 49},
[388] = {.lex_state = 14, .external_lex_state = 2},
[389] = {.lex_state = 49},
[390] = {.lex_state = 43, .external_lex_state = 2},
[391] = {.lex_state = 14, .external_lex_state = 2},
[392] = {.lex_state = 35, .external_lex_state = 2},
[393] = {.lex_state = 49},
[394] = {.lex_state = 45},
[395] = {.lex_state = 35, .external_lex_state = 2},
[396] = {.lex_state = 43, .external_lex_state = 2},
[397] = {.lex_state = 43},
[398] = {.lex_state = 35, .external_lex_state = 2},
[399] = {.lex_state = 35, .external_lex_state = 2},
[400] = {.lex_state = 43, .external_lex_state = 2},
[401] = {.lex_state = 35, .external_lex_state = 2},
[402] = {.lex_state = 35, .external_lex_state = 2},
[403] = {.lex_state = 14},
[404] = {.lex_state = 43},
[405] = {.lex_state = 53, .external_lex_state = 2},
[406] = {.lex_state = 50, .external_lex_state = 2},
[407] = {.lex_state = 53, .external_lex_state = 2},
[408] = {.lex_state = 53, .external_lex_state = 2},
[409] = {.lex_state = 43},
[410] = {.lex_state = 50, .external_lex_state = 2},
[411] = {.lex_state = 53, .external_lex_state = 2},
[412] = {.lex_state = 43},
[413] = {.lex_state = 45},
[414] = {.lex_state = 14},
[415] = {.lex_state = 53, .external_lex_state = 2},
[416] = {.lex_state = 43},
[417] = {.lex_state = 42},
[418] = {.lex_state = 14},
[419] = {.lex_state = 14},
[420] = {.lex_state = 43, .external_lex_state = 2},
[421] = {.lex_state = 50},
[422] = {.lex_state = 44},
[423] = {.lex_state = 43},
[424] = {.lex_state = 43},
[425] = {.lex_state = 43},
[426] = {.lex_state = 43},
[427] = {.lex_state = 43},
[428] = {.lex_state = 43},
[429] = {.lex_state = 14},
[430] = {.lex_state = 14},
[431] = {.lex_state = 14},
[432] = {.lex_state = 14},
[433] = {.lex_state = 43},
[434] = {.lex_state = 14},
[435] = {.lex_state = 14},
[436] = {.lex_state = 44},
[437] = {.lex_state = 50, .external_lex_state = 2},
[438] = {.lex_state = 35},
[439] = {.lex_state = 44},
[440] = {.lex_state = 35, .external_lex_state = 2},
[441] = {.lex_state = 35, .external_lex_state = 2},
[442] = {.lex_state = 50, .external_lex_state = 2},
[443] = {.lex_state = 35, .external_lex_state = 2},
[444] = {.lex_state = 14},
[445] = {.lex_state = 14},
[446] = {.lex_state = 35},
[447] = {.lex_state = 35, .external_lex_state = 2},
[448] = {.lex_state = 35, .external_lex_state = 2},
[449] = {.lex_state = 35, .external_lex_state = 2},
[450] = {.lex_state = 35},
[451] = {.lex_state = 44},
[452] = {.lex_state = 35, .external_lex_state = 2},
[453] = {.lex_state = 35, .external_lex_state = 2},
[454] = {.lex_state = 35},
[455] = {.lex_state = 14},
[456] = {.lex_state = 35},
[457] = {.lex_state = 53, .external_lex_state = 2},
[458] = {.lex_state = 50, .external_lex_state = 2},
[459] = {.lex_state = 49},
[460] = {.lex_state = 50},
[461] = {.lex_state = 55},
[462] = {.lex_state = 50},
[463] = {.lex_state = 14},
[464] = {.lex_state = 14},
[465] = {.lex_state = 14},
[466] = {.lex_state = 50},
[467] = {.lex_state = 14},
[468] = {.lex_state = 35},
[469] = {.lex_state = 14},
[470] = {.lex_state = 14},
[471] = {.lex_state = 50, .external_lex_state = 2},
[472] = {.lex_state = 50, .external_lex_state = 2},
[473] = {.lex_state = 55},
[474] = {.lex_state = 50, .external_lex_state = 2},
[475] = {.lex_state = 14},
[476] = {.lex_state = 49},
[477] = {.lex_state = 50},
[478] = {.lex_state = 14},
[479] = {.lex_state = 55},
[480] = {.lex_state = 14},
[481] = {.lex_state = 14, .external_lex_state = 2},
[482] = {.lex_state = 14},
[483] = {.lex_state = 14},
[484] = {.lex_state = 55},
[485] = {.lex_state = 14, .external_lex_state = 2},
[486] = {.lex_state = 35},
[487] = {.lex_state = 14},
[488] = {.lex_state = 14},
[489] = {.lex_state = 14},
[490] = {.lex_state = 55},
[491] = {.lex_state = 35, .external_lex_state = 2},
[492] = {.lex_state = 55},
[493] = {.lex_state = 14},
[494] = {.lex_state = 55},
[495] = {.lex_state = 35},
[496] = {.lex_state = 14},
[497] = {.lex_state = 55},
[498] = {.lex_state = 55},
[499] = {.lex_state = 55},
[500] = {.lex_state = 50, .external_lex_state = 2},
[501] = {.lex_state = 35},
[502] = {.lex_state = 50},
[503] = {.lex_state = 49},
[504] = {.lex_state = 14, .external_lex_state = 2},
[505] = {.lex_state = 14},
[506] = {.lex_state = 14},
[507] = {.lex_state = 55},
[508] = {.lex_state = 49},
[509] = {.lex_state = 50, .external_lex_state = 2},
[510] = {.lex_state = 0, .external_lex_state = 2},
[511] = {.lex_state = 50},
[512] = {.lex_state = 0, .external_lex_state = 2},
[513] = {.lex_state = 0, .external_lex_state = 2},
[514] = {.lex_state = 50, .external_lex_state = 2},
[515] = {.lex_state = 50},
[516] = {.lex_state = 52},
[517] = {.lex_state = 50},
[518] = {.lex_state = 50, .external_lex_state = 2},
[519] = {.lex_state = 35},
[520] = {.lex_state = 50, .external_lex_state = 2},
[521] = {.lex_state = 35},
[522] = {.lex_state = 50, .external_lex_state = 2},
[523] = {.lex_state = 50, .external_lex_state = 2},
[524] = {.lex_state = 50, .external_lex_state = 2},
[525] = {.lex_state = 14, .external_lex_state = 2},
[526] = {.lex_state = 14, .external_lex_state = 2},
[527] = {.lex_state = 52},
[528] = {.lex_state = 50, .external_lex_state = 2},
[529] = {.lex_state = 14, .external_lex_state = 2},
[530] = {.lex_state = 50},
[531] = {.lex_state = 14},
[532] = {.lex_state = 14},
[533] = {.lex_state = 14},
[534] = {.lex_state = 50},
[535] = {.lex_state = 14},
[536] = {.lex_state = 14},
[537] = {.lex_state = 14},
[538] = {.lex_state = 14},
[539] = {.lex_state = 14},
[540] = {.lex_state = 14},
[541] = {.lex_state = 14},
[542] = {.lex_state = 14},
[543] = {.lex_state = 50},
[544] = {.lex_state = 14},
[545] = {.lex_state = 14},
[546] = {.lex_state = 0, .external_lex_state = 2},
[547] = {.lex_state = 14},
[548] = {.lex_state = 35},
[549] = {.lex_state = 14},
[550] = {.lex_state = 35},
[551] = {.lex_state = 14},
[552] = {.lex_state = 14},
[553] = {.lex_state = 35},
[554] = {.lex_state = 14},
[555] = {.lex_state = 50},
[556] = {.lex_state = 14},
[557] = {.lex_state = 14},
[558] = {.lex_state = 14},
[559] = {.lex_state = 50},
[560] = {.lex_state = 35},
[561] = {.lex_state = 35},
[562] = {.lex_state = 14},
[563] = {.lex_state = 14},
[564] = {.lex_state = 14},
[565] = {.lex_state = 14},
[566] = {.lex_state = 14},
[567] = {.lex_state = 50},
[568] = {.lex_state = 0, .external_lex_state = 2},
[569] = {.lex_state = 14},
[570] = {.lex_state = 50},
[571] = {.lex_state = 14},
[572] = {.lex_state = 50},
[573] = {.lex_state = 14},
[574] = {.lex_state = 50},
[575] = {.lex_state = 14},
[576] = {.lex_state = 14},
[577] = {.lex_state = 50},
[578] = {.lex_state = 50},
[579] = {.lex_state = 14},
[580] = {.lex_state = 50},
[581] = {.lex_state = 14},
[582] = {.lex_state = 50},
[583] = {.lex_state = 14},
[584] = {.lex_state = 0, .external_lex_state = 2},
[585] = {.lex_state = 14},
[586] = {.lex_state = 14},
[587] = {.lex_state = 14},
[588] = {.lex_state = 50},
[589] = {.lex_state = 14},
[590] = {.lex_state = 0, .external_lex_state = 2},
[591] = {.lex_state = 0, .external_lex_state = 2},
[592] = {.lex_state = 0, .external_lex_state = 2},
[593] = {.lex_state = 0, .external_lex_state = 2},
[594] = {.lex_state = 0, .external_lex_state = 2},
[595] = {.lex_state = 14},
[596] = {.lex_state = 14},
[597] = {.lex_state = 0},
[598] = {.lex_state = 50},
[599] = {.lex_state = 55},
[600] = {.lex_state = 0},
[601] = {.lex_state = 55},
[602] = {.lex_state = 0},
[603] = {.lex_state = 0},
[604] = {.lex_state = 0},
[605] = {.lex_state = 0},
[606] = {.lex_state = 0},
[607] = {.lex_state = 55},
[608] = {.lex_state = 0},
[609] = {.lex_state = 0},
[610] = {.lex_state = 55},
[611] = {.lex_state = 0},
[612] = {.lex_state = 0},
[613] = {.lex_state = 0},
[614] = {.lex_state = 0},
[615] = {.lex_state = 55},
[616] = {.lex_state = 46},
[617] = {.lex_state = 0},
[618] = {.lex_state = 55},
[619] = {.lex_state = 0},
[620] = {.lex_state = 0},
[621] = {.lex_state = 55},
[622] = {.lex_state = 0},
[623] = {.lex_state = 55},
[624] = {.lex_state = 0},
[625] = {.lex_state = 0},
[626] = {.lex_state = 55},
[627] = {.lex_state = 0},
[628] = {.lex_state = 0},
[629] = {.lex_state = 55},
[630] = {.lex_state = 0},
[631] = {.lex_state = 55},
[632] = {.lex_state = 0},
[633] = {.lex_state = 0},
[634] = {.lex_state = 55},
[635] = {.lex_state = 0},
[636] = {.lex_state = 0},
[637] = {.lex_state = 0},
[638] = {.lex_state = 55},
[639] = {.lex_state = 0},
[640] = {.lex_state = 55},
[641] = {.lex_state = 0},
[642] = {.lex_state = 0},
[643] = {.lex_state = 55},
[644] = {.lex_state = 55},
[645] = {.lex_state = 0},
[646] = {.lex_state = 55},
[647] = {.lex_state = 0},
[648] = {.lex_state = 0},
[649] = {.lex_state = 55},
[650] = {.lex_state = 0},
[651] = {.lex_state = 0},
[652] = {.lex_state = 0},
[653] = {.lex_state = 59},
[654] = {.lex_state = 0},
[655] = {.lex_state = 0},
[656] = {.lex_state = 0},
[657] = {.lex_state = 0},
[658] = {.lex_state = 59},
[659] = {.lex_state = 59},
[660] = {.lex_state = 0},
[661] = {.lex_state = 0},
[662] = {.lex_state = 0},
[663] = {.lex_state = 0},
[664] = {.lex_state = 55},
[665] = {.lex_state = 0},
[666] = {.lex_state = 0},
[667] = {.lex_state = 0},
[668] = {.lex_state = 59},
[669] = {.lex_state = 59},
[670] = {.lex_state = 0},
[671] = {.lex_state = 0},
[672] = {.lex_state = 59},
[673] = {.lex_state = 0},
[674] = {.lex_state = 0},
[675] = {.lex_state = 59},
[676] = {.lex_state = 0},
[677] = {.lex_state = 0},
[678] = {.lex_state = 59},
[679] = {.lex_state = 55},
[680] = {.lex_state = 55},
[681] = {.lex_state = 59},
[682] = {.lex_state = 0},
[683] = {.lex_state = 0},
[684] = {.lex_state = 59},
[685] = {.lex_state = 0},
[686] = {.lex_state = 0},
[687] = {.lex_state = 59},
[688] = {.lex_state = 0},
[689] = {.lex_state = 35},
[690] = {.lex_state = 59},
[691] = {.lex_state = 0},
[692] = {.lex_state = 0},
[693] = {.lex_state = 0},
[694] = {.lex_state = 50},
[695] = {.lex_state = 0},
[696] = {.lex_state = 55},
[697] = {.lex_state = 46},
[698] = {.lex_state = 35},
[699] = {.lex_state = 0},
[700] = {.lex_state = 50},
[701] = {.lex_state = 50},
[702] = {.lex_state = 0},
[703] = {.lex_state = 0},
[704] = {.lex_state = 55},
[705] = {.lex_state = 50},
[706] = {.lex_state = 55},
[707] = {.lex_state = 0},
[708] = {.lex_state = 46},
[709] = {.lex_state = 0},
};
static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
[0] = {
[ts_builtin_sym_end] = ACTIONS(1),
[sym_simple_word] = ACTIONS(1),
[anon_sym_SEMI] = ACTIONS(1),
[sym_comment] = ACTIONS(1),
[anon_sym_regexp] = ACTIONS(1),
[anon_sym_while] = ACTIONS(1),
[anon_sym_expr] = ACTIONS(1),
[anon_sym_foreach] = ACTIONS(1),
[anon_sym_global] = ACTIONS(1),
[anon_sym_namespace] = ACTIONS(1),
[anon_sym_try] = ACTIONS(1),
[anon_sym_on] = ACTIONS(1),
[anon_sym_error] = ACTIONS(1),
[anon_sym_finally] = ACTIONS(1),
[sym_unpack] = ACTIONS(1),
[anon_sym_COLON_COLON] = ACTIONS(1),
[anon_sym_LPAREN] = ACTIONS(1),
[anon_sym_RPAREN] = ACTIONS(1),
[anon_sym_DOLLAR] = ACTIONS(1),
[anon_sym_LBRACE] = ACTIONS(1),
[anon_sym_RBRACE] = ACTIONS(1),
[anon_sym_set] = ACTIONS(1),
[anon_sym_proc] = ACTIONS(1),
[sym__number] = ACTIONS(1),
[sym__boolean] = ACTIONS(1),
[anon_sym_LPAREN2] = ACTIONS(1),
[anon_sym_DASH] = ACTIONS(1),
[anon_sym_PLUS] = ACTIONS(1),
[anon_sym_TILDE] = ACTIONS(1),
[anon_sym_BANG] = ACTIONS(1),
[anon_sym_STAR_STAR] = ACTIONS(1),
[anon_sym_SLASH] = ACTIONS(1),
[anon_sym_STAR] = ACTIONS(1),
[anon_sym_PERCENT] = ACTIONS(1),
[anon_sym_LT_LT] = ACTIONS(1),
[anon_sym_GT_GT] = ACTIONS(1),
[anon_sym_GT] = ACTIONS(1),
[anon_sym_LT] = ACTIONS(1),
[anon_sym_GT_EQ] = ACTIONS(1),
[anon_sym_LT_EQ] = ACTIONS(1),
[anon_sym_EQ_EQ] = ACTIONS(1),
[anon_sym_eq] = ACTIONS(1),
[anon_sym_ne] = ACTIONS(1),
[anon_sym_in] = ACTIONS(1),
[anon_sym_ni] = ACTIONS(1),
[anon_sym_AMP] = ACTIONS(1),
[anon_sym_CARET] = ACTIONS(1),
[anon_sym_PIPE] = ACTIONS(1),
[anon_sym_AMP_AMP] = ACTIONS(1),
[anon_sym_PIPE_PIPE] = ACTIONS(1),
[anon_sym_QMARK] = ACTIONS(1),
[anon_sym_COLON] = ACTIONS(1),
[anon_sym_elseif] = ACTIONS(1),
[anon_sym_else] = ACTIONS(1),
[anon_sym_if] = ACTIONS(1),
[anon_sym_catch] = ACTIONS(1),
[anon_sym_DQUOTE] = ACTIONS(1),
[anon_sym_LBRACK] = ACTIONS(1),
[anon_sym_RBRACK] = ACTIONS(1),
[sym__concat] = ACTIONS(1),
[sym__immediate] = ACTIONS(1),
},
[1] = {
[sym_source_file] = STATE(674),
[sym_regexp] = STATE(596),
[sym_while] = STATE(596),
[sym_expr_cmd] = STATE(596),
[sym_foreach] = STATE(596),
[sym_global] = STATE(596),
[sym_namespace] = STATE(596),
[sym_try] = STATE(596),
[sym__command] = STATE(596),
[sym_command] = STATE(596),
[sym__concat_word] = STATE(97),
[sym_variable_substitution] = STATE(170),
[sym_braced_word] = STATE(97),
[sym_set] = STATE(596),
[sym_procedure] = STATE(596),
[sym_conditional] = STATE(596),
[sym_catch] = STATE(596),
[sym_quoted_word] = STATE(170),
[sym_command_substitution] = STATE(170),
[aux_sym_source_file_repeat1] = STATE(2),
[ts_builtin_sym_end] = ACTIONS(3),
[sym_simple_word] = ACTIONS(5),
[anon_sym_LF] = ACTIONS(7),
[anon_sym_SEMI] = ACTIONS(7),
[sym_comment] = ACTIONS(9),
[anon_sym_regexp] = ACTIONS(11),
[anon_sym_while] = ACTIONS(13),
[anon_sym_expr] = ACTIONS(15),
[anon_sym_foreach] = ACTIONS(17),
[anon_sym_global] = ACTIONS(19),
[anon_sym_namespace] = ACTIONS(21),
[anon_sym_try] = ACTIONS(23),
[sym_unpack] = ACTIONS(25),
[anon_sym_DOLLAR] = ACTIONS(27),
[anon_sym_LBRACE] = ACTIONS(29),
[anon_sym_set] = ACTIONS(31),
[anon_sym_proc] = ACTIONS(33),
[anon_sym_if] = ACTIONS(35),
[anon_sym_catch] = ACTIONS(37),
[anon_sym_DQUOTE] = ACTIONS(39),
[sym_escaped_character] = ACTIONS(41),
[anon_sym_LBRACK] = ACTIONS(43),
},
};
static const uint16_t ts_small_parse_table[] = {
[0] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(9), 1,
sym_comment,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(45), 1,
ts_builtin_sym_end,
STATE(3), 1,
aux_sym_source_file_repeat1,
ACTIONS(47), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(596), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[92] = 25,
ACTIONS(49), 1,
ts_builtin_sym_end,
ACTIONS(51), 1,
sym_simple_word,
ACTIONS(57), 1,
sym_comment,
ACTIONS(60), 1,
anon_sym_regexp,
ACTIONS(63), 1,
anon_sym_while,
ACTIONS(66), 1,
anon_sym_expr,
ACTIONS(69), 1,
anon_sym_foreach,
ACTIONS(72), 1,
anon_sym_global,
ACTIONS(75), 1,
anon_sym_namespace,
ACTIONS(78), 1,
anon_sym_try,
ACTIONS(81), 1,
sym_unpack,
ACTIONS(84), 1,
anon_sym_DOLLAR,
ACTIONS(87), 1,
anon_sym_LBRACE,
ACTIONS(90), 1,
anon_sym_set,
ACTIONS(93), 1,
anon_sym_proc,
ACTIONS(96), 1,
anon_sym_if,
ACTIONS(99), 1,
anon_sym_catch,
ACTIONS(102), 1,
anon_sym_DQUOTE,
ACTIONS(105), 1,
sym_escaped_character,
ACTIONS(108), 1,
anon_sym_LBRACK,
STATE(3), 1,
aux_sym_source_file_repeat1,
ACTIONS(54), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(596), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[184] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
ACTIONS(115), 1,
anon_sym_RBRACE,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[276] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
ACTIONS(117), 1,
anon_sym_RBRACE,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[368] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
ACTIONS(119), 1,
anon_sym_RBRACE,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[460] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
ACTIONS(121), 1,
anon_sym_RBRACE,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[552] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
ACTIONS(123), 1,
anon_sym_RBRACE,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[644] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
ACTIONS(125), 1,
anon_sym_RBRACE,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[736] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
ACTIONS(127), 1,
anon_sym_RBRACE,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[828] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
ACTIONS(129), 1,
anon_sym_RBRACE,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[920] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
ACTIONS(131), 1,
anon_sym_RBRACE,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1012] = 25,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
ACTIONS(133), 1,
anon_sym_RBRACE,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1104] = 24,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(113), 1,
sym_comment,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(111), 2,
anon_sym_LF,
anon_sym_SEMI,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(566), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1193] = 23,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(135), 1,
sym_comment,
ACTIONS(137), 1,
anon_sym_RBRACE,
ACTIONS(139), 1,
sym_escaped_character,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(463), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1278] = 23,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(139), 1,
sym_escaped_character,
ACTIONS(141), 1,
sym_comment,
ACTIONS(143), 1,
anon_sym_RBRACE,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(465), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1363] = 23,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(139), 1,
sym_escaped_character,
ACTIONS(145), 1,
sym_comment,
ACTIONS(147), 1,
anon_sym_RBRACE,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(487), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1448] = 23,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(139), 1,
sym_escaped_character,
ACTIONS(149), 1,
sym_comment,
ACTIONS(151), 1,
anon_sym_RBRACE,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(475), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1533] = 23,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(11), 1,
anon_sym_regexp,
ACTIONS(13), 1,
anon_sym_while,
ACTIONS(15), 1,
anon_sym_expr,
ACTIONS(17), 1,
anon_sym_foreach,
ACTIONS(19), 1,
anon_sym_global,
ACTIONS(21), 1,
anon_sym_namespace,
ACTIONS(23), 1,
anon_sym_try,
ACTIONS(25), 1,
sym_unpack,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(31), 1,
anon_sym_set,
ACTIONS(33), 1,
anon_sym_proc,
ACTIONS(35), 1,
anon_sym_if,
ACTIONS(37), 1,
anon_sym_catch,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(139), 1,
sym_escaped_character,
ACTIONS(153), 1,
sym_comment,
ACTIONS(155), 1,
anon_sym_RBRACE,
STATE(97), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(480), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1618] = 22,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(159), 1,
sym_comment,
ACTIONS(161), 1,
anon_sym_regexp,
ACTIONS(163), 1,
anon_sym_while,
ACTIONS(165), 1,
anon_sym_expr,
ACTIONS(167), 1,
anon_sym_foreach,
ACTIONS(169), 1,
anon_sym_global,
ACTIONS(171), 1,
anon_sym_namespace,
ACTIONS(173), 1,
anon_sym_try,
ACTIONS(175), 1,
sym_unpack,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(181), 1,
anon_sym_set,
ACTIONS(183), 1,
anon_sym_proc,
ACTIONS(185), 1,
anon_sym_if,
ACTIONS(187), 1,
anon_sym_catch,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
STATE(107), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(608), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1700] = 22,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(161), 1,
anon_sym_regexp,
ACTIONS(163), 1,
anon_sym_while,
ACTIONS(165), 1,
anon_sym_expr,
ACTIONS(167), 1,
anon_sym_foreach,
ACTIONS(169), 1,
anon_sym_global,
ACTIONS(171), 1,
anon_sym_namespace,
ACTIONS(173), 1,
anon_sym_try,
ACTIONS(175), 1,
sym_unpack,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(181), 1,
anon_sym_set,
ACTIONS(183), 1,
anon_sym_proc,
ACTIONS(185), 1,
anon_sym_if,
ACTIONS(187), 1,
anon_sym_catch,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(195), 1,
sym_comment,
STATE(107), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(639), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1782] = 22,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(161), 1,
anon_sym_regexp,
ACTIONS(163), 1,
anon_sym_while,
ACTIONS(165), 1,
anon_sym_expr,
ACTIONS(167), 1,
anon_sym_foreach,
ACTIONS(169), 1,
anon_sym_global,
ACTIONS(171), 1,
anon_sym_namespace,
ACTIONS(173), 1,
anon_sym_try,
ACTIONS(175), 1,
sym_unpack,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(181), 1,
anon_sym_set,
ACTIONS(183), 1,
anon_sym_proc,
ACTIONS(185), 1,
anon_sym_if,
ACTIONS(187), 1,
anon_sym_catch,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(197), 1,
sym_comment,
STATE(107), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(665), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1864] = 22,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(161), 1,
anon_sym_regexp,
ACTIONS(163), 1,
anon_sym_while,
ACTIONS(165), 1,
anon_sym_expr,
ACTIONS(167), 1,
anon_sym_foreach,
ACTIONS(169), 1,
anon_sym_global,
ACTIONS(171), 1,
anon_sym_namespace,
ACTIONS(173), 1,
anon_sym_try,
ACTIONS(175), 1,
sym_unpack,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(181), 1,
anon_sym_set,
ACTIONS(183), 1,
anon_sym_proc,
ACTIONS(185), 1,
anon_sym_if,
ACTIONS(187), 1,
anon_sym_catch,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(199), 1,
sym_comment,
STATE(107), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(660), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[1946] = 22,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(161), 1,
anon_sym_regexp,
ACTIONS(163), 1,
anon_sym_while,
ACTIONS(165), 1,
anon_sym_expr,
ACTIONS(167), 1,
anon_sym_foreach,
ACTIONS(169), 1,
anon_sym_global,
ACTIONS(171), 1,
anon_sym_namespace,
ACTIONS(173), 1,
anon_sym_try,
ACTIONS(175), 1,
sym_unpack,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(181), 1,
anon_sym_set,
ACTIONS(183), 1,
anon_sym_proc,
ACTIONS(185), 1,
anon_sym_if,
ACTIONS(187), 1,
anon_sym_catch,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(201), 1,
sym_comment,
STATE(107), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(657), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[2028] = 22,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(161), 1,
anon_sym_regexp,
ACTIONS(163), 1,
anon_sym_while,
ACTIONS(165), 1,
anon_sym_expr,
ACTIONS(167), 1,
anon_sym_foreach,
ACTIONS(169), 1,
anon_sym_global,
ACTIONS(171), 1,
anon_sym_namespace,
ACTIONS(173), 1,
anon_sym_try,
ACTIONS(175), 1,
sym_unpack,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(181), 1,
anon_sym_set,
ACTIONS(183), 1,
anon_sym_proc,
ACTIONS(185), 1,
anon_sym_if,
ACTIONS(187), 1,
anon_sym_catch,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(203), 1,
sym_comment,
STATE(107), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(673), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[2110] = 22,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(161), 1,
anon_sym_regexp,
ACTIONS(163), 1,
anon_sym_while,
ACTIONS(165), 1,
anon_sym_expr,
ACTIONS(167), 1,
anon_sym_foreach,
ACTIONS(169), 1,
anon_sym_global,
ACTIONS(171), 1,
anon_sym_namespace,
ACTIONS(173), 1,
anon_sym_try,
ACTIONS(175), 1,
sym_unpack,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(181), 1,
anon_sym_set,
ACTIONS(183), 1,
anon_sym_proc,
ACTIONS(185), 1,
anon_sym_if,
ACTIONS(187), 1,
anon_sym_catch,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(205), 1,
sym_comment,
STATE(107), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(609), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[2192] = 22,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(161), 1,
anon_sym_regexp,
ACTIONS(163), 1,
anon_sym_while,
ACTIONS(165), 1,
anon_sym_expr,
ACTIONS(167), 1,
anon_sym_foreach,
ACTIONS(169), 1,
anon_sym_global,
ACTIONS(171), 1,
anon_sym_namespace,
ACTIONS(173), 1,
anon_sym_try,
ACTIONS(175), 1,
sym_unpack,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(181), 1,
anon_sym_set,
ACTIONS(183), 1,
anon_sym_proc,
ACTIONS(185), 1,
anon_sym_if,
ACTIONS(187), 1,
anon_sym_catch,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(207), 1,
sym_comment,
STATE(107), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(617), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[2274] = 22,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(161), 1,
anon_sym_regexp,
ACTIONS(163), 1,
anon_sym_while,
ACTIONS(165), 1,
anon_sym_expr,
ACTIONS(167), 1,
anon_sym_foreach,
ACTIONS(169), 1,
anon_sym_global,
ACTIONS(171), 1,
anon_sym_namespace,
ACTIONS(173), 1,
anon_sym_try,
ACTIONS(175), 1,
sym_unpack,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(181), 1,
anon_sym_set,
ACTIONS(183), 1,
anon_sym_proc,
ACTIONS(185), 1,
anon_sym_if,
ACTIONS(187), 1,
anon_sym_catch,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(209), 1,
sym_comment,
STATE(107), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(625), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[2356] = 22,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(161), 1,
anon_sym_regexp,
ACTIONS(163), 1,
anon_sym_while,
ACTIONS(165), 1,
anon_sym_expr,
ACTIONS(167), 1,
anon_sym_foreach,
ACTIONS(169), 1,
anon_sym_global,
ACTIONS(171), 1,
anon_sym_namespace,
ACTIONS(173), 1,
anon_sym_try,
ACTIONS(175), 1,
sym_unpack,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(181), 1,
anon_sym_set,
ACTIONS(183), 1,
anon_sym_proc,
ACTIONS(185), 1,
anon_sym_if,
ACTIONS(187), 1,
anon_sym_catch,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(211), 1,
sym_comment,
STATE(107), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
STATE(633), 13,
sym_regexp,
sym_while,
sym_expr_cmd,
sym_foreach,
sym_global,
sym_namespace,
sym_try,
sym__command,
sym_command,
sym_set,
sym_procedure,
sym_conditional,
sym_catch,
[2438] = 5,
ACTIONS(213), 1,
anon_sym_COLON_COLON,
STATE(31), 1,
aux_sym__id_immediate_repeat1,
STATE(644), 1,
sym__ns_delim,
ACTIONS(217), 6,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
anon_sym_COLON,
ACTIONS(215), 23,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_RBRACK,
[2481] = 5,
ACTIONS(213), 1,
anon_sym_COLON_COLON,
STATE(32), 1,
aux_sym__id_immediate_repeat1,
STATE(644), 1,
sym__ns_delim,
ACTIONS(221), 6,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
anon_sym_COLON,
ACTIONS(219), 23,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_RBRACK,
[2524] = 5,
ACTIONS(223), 1,
anon_sym_COLON_COLON,
STATE(32), 1,
aux_sym__id_immediate_repeat1,
STATE(644), 1,
sym__ns_delim,
ACTIONS(228), 6,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
anon_sym_COLON,
ACTIONS(226), 23,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_RBRACK,
[2567] = 5,
ACTIONS(213), 1,
anon_sym_COLON_COLON,
STATE(32), 1,
aux_sym__id_immediate_repeat1,
STATE(644), 1,
sym__ns_delim,
ACTIONS(217), 6,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
anon_sym_COLON,
ACTIONS(215), 23,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_RBRACK,
[2610] = 5,
ACTIONS(213), 1,
anon_sym_COLON_COLON,
STATE(33), 1,
aux_sym__id_immediate_repeat1,
STATE(644), 1,
sym__ns_delim,
ACTIONS(232), 6,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
anon_sym_COLON,
ACTIONS(230), 23,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_RBRACK,
[2653] = 4,
ACTIONS(234), 1,
anon_sym_LPAREN,
STATE(43), 1,
sym_array_index,
ACTIONS(238), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(236), 23,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
anon_sym_RBRACK,
[2692] = 2,
ACTIONS(228), 6,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
anon_sym_COLON,
ACTIONS(226), 24,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_RBRACK,
[2727] = 4,
ACTIONS(234), 1,
anon_sym_LPAREN,
STATE(38), 1,
sym_array_index,
ACTIONS(242), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(240), 23,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
anon_sym_RBRACK,
[2766] = 2,
ACTIONS(246), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(244), 23,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
anon_sym_RBRACK,
[2799] = 2,
ACTIONS(250), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(248), 23,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
anon_sym_RBRACK,
[2832] = 2,
ACTIONS(254), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(252), 23,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
anon_sym_RBRACK,
[2865] = 2,
ACTIONS(258), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(256), 23,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
anon_sym_RBRACK,
[2898] = 2,
ACTIONS(262), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(260), 23,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
anon_sym_RBRACK,
[2931] = 2,
ACTIONS(266), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(264), 23,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
anon_sym_RBRACK,
[2964] = 2,
ACTIONS(270), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(268), 23,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
anon_sym_RBRACK,
[2997] = 3,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(276), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(272), 21,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3031] = 6,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(276), 4,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(272), 17,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3071] = 14,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(276), 1,
anon_sym_PIPE,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
ACTIONS(272), 6,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3127] = 14,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
ACTIONS(272), 6,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3183] = 15,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(302), 1,
anon_sym_AMP_AMP,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
ACTIONS(272), 5,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3241] = 11,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(276), 2,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(272), 9,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3291] = 16,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(302), 1,
anon_sym_AMP_AMP,
ACTIONS(306), 1,
anon_sym_PIPE_PIPE,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
ACTIONS(304), 4,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_QMARK,
anon_sym_COLON,
[3351] = 2,
ACTIONS(310), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(308), 22,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3383] = 2,
ACTIONS(314), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(312), 22,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3415] = 7,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(276), 4,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(272), 15,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3457] = 9,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(276), 2,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(272), 13,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3503] = 10,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(276), 2,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(272), 11,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3551] = 12,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(276), 2,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
ACTIONS(272), 7,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3603] = 13,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(276), 1,
anon_sym_PIPE,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
ACTIONS(272), 7,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3657] = 2,
ACTIONS(318), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(316), 22,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3689] = 2,
ACTIONS(322), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(320), 22,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3721] = 2,
ACTIONS(276), 5,
anon_sym_STAR,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(272), 22,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_STAR_STAR,
anon_sym_SLASH,
anon_sym_PERCENT,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3753] = 5,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(276), 4,
anon_sym_GT,
anon_sym_LT,
anon_sym_AMP,
anon_sym_PIPE,
ACTIONS(272), 19,
anon_sym_RPAREN,
anon_sym_RBRACE,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_LT_LT,
anon_sym_GT_GT,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
anon_sym_eq,
anon_sym_ne,
anon_sym_in,
anon_sym_ni,
anon_sym_CARET,
anon_sym_AMP_AMP,
anon_sym_PIPE_PIPE,
anon_sym_QMARK,
anon_sym_COLON,
[3791] = 17,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(302), 1,
anon_sym_AMP_AMP,
ACTIONS(306), 1,
anon_sym_PIPE_PIPE,
ACTIONS(324), 1,
anon_sym_QMARK,
ACTIONS(326), 1,
anon_sym_COLON,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
[3851] = 17,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(302), 1,
anon_sym_AMP_AMP,
ACTIONS(306), 1,
anon_sym_PIPE_PIPE,
ACTIONS(324), 1,
anon_sym_QMARK,
ACTIONS(328), 1,
anon_sym_RPAREN,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
[3911] = 17,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(302), 1,
anon_sym_AMP_AMP,
ACTIONS(306), 1,
anon_sym_PIPE_PIPE,
ACTIONS(324), 1,
anon_sym_QMARK,
ACTIONS(330), 1,
anon_sym_RPAREN,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
[3971] = 17,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(302), 1,
anon_sym_AMP_AMP,
ACTIONS(306), 1,
anon_sym_PIPE_PIPE,
ACTIONS(324), 1,
anon_sym_QMARK,
ACTIONS(332), 1,
anon_sym_RBRACE,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
[4031] = 17,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(302), 1,
anon_sym_AMP_AMP,
ACTIONS(306), 1,
anon_sym_PIPE_PIPE,
ACTIONS(324), 1,
anon_sym_QMARK,
ACTIONS(334), 1,
anon_sym_RPAREN,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
[4091] = 17,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(302), 1,
anon_sym_AMP_AMP,
ACTIONS(306), 1,
anon_sym_PIPE_PIPE,
ACTIONS(324), 1,
anon_sym_QMARK,
ACTIONS(336), 1,
anon_sym_RBRACE,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
[4151] = 17,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(302), 1,
anon_sym_AMP_AMP,
ACTIONS(306), 1,
anon_sym_PIPE_PIPE,
ACTIONS(324), 1,
anon_sym_QMARK,
ACTIONS(338), 1,
anon_sym_RBRACE,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
[4211] = 17,
ACTIONS(274), 1,
anon_sym_STAR_STAR,
ACTIONS(282), 1,
anon_sym_STAR,
ACTIONS(296), 1,
anon_sym_AMP,
ACTIONS(298), 1,
anon_sym_CARET,
ACTIONS(300), 1,
anon_sym_PIPE,
ACTIONS(302), 1,
anon_sym_AMP_AMP,
ACTIONS(306), 1,
anon_sym_PIPE_PIPE,
ACTIONS(324), 1,
anon_sym_QMARK,
ACTIONS(340), 1,
anon_sym_RPAREN,
ACTIONS(278), 2,
anon_sym_DASH,
anon_sym_PLUS,
ACTIONS(280), 2,
anon_sym_SLASH,
anon_sym_PERCENT,
ACTIONS(284), 2,
anon_sym_LT_LT,
anon_sym_GT_GT,
ACTIONS(286), 2,
anon_sym_GT,
anon_sym_LT,
ACTIONS(288), 2,
anon_sym_GT_EQ,
anon_sym_LT_EQ,
ACTIONS(290), 2,
anon_sym_EQ_EQ,
anon_sym_BANG_EQ,
ACTIONS(292), 2,
anon_sym_eq,
anon_sym_ne,
ACTIONS(294), 2,
anon_sym_in,
anon_sym_ni,
[4271] = 3,
STATE(71), 1,
aux_sym_braced_word_repeat1,
ACTIONS(344), 2,
anon_sym_LF,
anon_sym_SEMI,
ACTIONS(342), 20,
sym_comment,
anon_sym_regexp,
anon_sym_while,
anon_sym_expr,
anon_sym_foreach,
anon_sym_global,
anon_sym_namespace,
anon_sym_try,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_set,
anon_sym_proc,
anon_sym_if,
anon_sym_catch,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[4301] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(361), 1,
sym_escaped_character,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(353), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(57), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4344] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(367), 1,
sym_escaped_character,
ACTIONS(365), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(54), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4387] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(371), 1,
sym_escaped_character,
ACTIONS(369), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(70), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4430] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(375), 1,
sym_escaped_character,
ACTIONS(373), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(55), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4473] = 2,
ACTIONS(49), 1,
ts_builtin_sym_end,
ACTIONS(377), 21,
anon_sym_LF,
anon_sym_SEMI,
sym_comment,
anon_sym_regexp,
anon_sym_while,
anon_sym_expr,
anon_sym_foreach,
anon_sym_global,
anon_sym_namespace,
anon_sym_try,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_set,
anon_sym_proc,
anon_sym_if,
anon_sym_catch,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[4500] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(381), 1,
sym_escaped_character,
ACTIONS(379), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(48), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4543] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(385), 1,
sym_escaped_character,
ACTIONS(383), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(56), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4586] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(389), 1,
sym_escaped_character,
ACTIONS(387), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(65), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4629] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(393), 1,
sym_escaped_character,
ACTIONS(391), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(51), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4672] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(397), 1,
sym_escaped_character,
ACTIONS(395), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(60), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4715] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(401), 1,
sym_escaped_character,
ACTIONS(399), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(69), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4758] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(405), 1,
sym_escaped_character,
ACTIONS(403), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(50), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4801] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(409), 1,
sym_escaped_character,
ACTIONS(407), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(45), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4844] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(413), 1,
sym_escaped_character,
ACTIONS(411), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(49), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4887] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(417), 1,
sym_escaped_character,
ACTIONS(415), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(68), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4930] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(421), 1,
sym_escaped_character,
ACTIONS(419), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(67), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[4973] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(425), 1,
sym_escaped_character,
ACTIONS(423), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(62), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[5016] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(429), 1,
sym_escaped_character,
ACTIONS(427), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(66), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[5059] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(433), 1,
sym_escaped_character,
ACTIONS(431), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(64), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[5102] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(437), 1,
sym_escaped_character,
ACTIONS(435), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(63), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[5145] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(441), 1,
sym_escaped_character,
ACTIONS(439), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(61), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[5188] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(445), 1,
sym_escaped_character,
ACTIONS(443), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(58), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[5231] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(449), 1,
sym_escaped_character,
ACTIONS(447), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(46), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[5274] = 10,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(349), 1,
anon_sym_DOLLAR,
ACTIONS(351), 1,
anon_sym_LBRACE,
ACTIONS(355), 1,
anon_sym_LPAREN2,
ACTIONS(359), 1,
anon_sym_DQUOTE,
ACTIONS(363), 1,
anon_sym_LBRACK,
ACTIONS(453), 1,
sym_escaped_character,
ACTIONS(451), 2,
sym__number,
sym__boolean,
ACTIONS(357), 4,
anon_sym_DASH,
anon_sym_PLUS,
anon_sym_TILDE,
anon_sym_BANG,
STATE(47), 9,
sym_variable_substitution,
sym_braced_word_simple,
sym__expr_atom_no_brace,
sym__expr,
sym_unary_expr,
sym_binop_expr,
sym_ternary_expr,
sym_quoted_word,
sym_command_substitution,
[5317] = 11,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(457), 1,
sym_unpack,
STATE(595), 1,
sym_word_list,
ACTIONS(455), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(100), 3,
sym__concat_word,
sym_braced_word,
aux_sym_word_list_repeat1,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[5357] = 11,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(457), 1,
sym_unpack,
STATE(569), 1,
sym_word_list,
ACTIONS(459), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(100), 3,
sym__concat_word,
sym_braced_word,
aux_sym_word_list_repeat1,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[5397] = 10,
ACTIONS(465), 1,
anon_sym_LPAREN,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(469), 1,
anon_sym_LBRACE,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
STATE(115), 1,
sym_array_index,
STATE(589), 1,
sym__word_simple,
ACTIONS(461), 2,
sym_escaped_character,
sym_simple_word,
ACTIONS(463), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(504), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[5434] = 10,
ACTIONS(475), 1,
sym_simple_word,
ACTIONS(480), 1,
sym_unpack,
ACTIONS(483), 1,
anon_sym_DOLLAR,
ACTIONS(486), 1,
anon_sym_LBRACE,
ACTIONS(489), 1,
anon_sym_DQUOTE,
ACTIONS(492), 1,
sym_escaped_character,
ACTIONS(495), 1,
anon_sym_LBRACK,
ACTIONS(478), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(99), 3,
sym__concat_word,
sym_braced_word,
aux_sym_word_list_repeat1,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[5471] = 10,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(457), 1,
sym_unpack,
ACTIONS(498), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(99), 3,
sym__concat_word,
sym_braced_word,
aux_sym_word_list_repeat1,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[5508] = 5,
ACTIONS(500), 1,
anon_sym_COLON_COLON,
STATE(106), 1,
aux_sym__id_immediate_repeat1,
STATE(649), 1,
sym__ns_delim,
ACTIONS(230), 2,
sym__concat,
anon_sym_LPAREN,
ACTIONS(232), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[5534] = 5,
ACTIONS(500), 1,
anon_sym_COLON_COLON,
STATE(105), 1,
aux_sym__id_immediate_repeat1,
STATE(649), 1,
sym__ns_delim,
ACTIONS(215), 2,
sym__concat,
anon_sym_LPAREN,
ACTIONS(217), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[5560] = 11,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(455), 1,
anon_sym_RBRACK,
ACTIONS(502), 1,
sym_unpack,
STATE(656), 1,
sym_word_list,
STATE(114), 3,
sym__concat_word,
sym_braced_word,
aux_sym_word_list_repeat1,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[5598] = 5,
ACTIONS(504), 1,
anon_sym_COLON_COLON,
STATE(104), 1,
aux_sym__id_immediate_repeat1,
STATE(649), 1,
sym__ns_delim,
ACTIONS(226), 2,
sym__concat,
anon_sym_LPAREN,
ACTIONS(228), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[5624] = 5,
ACTIONS(500), 1,
anon_sym_COLON_COLON,
STATE(104), 1,
aux_sym__id_immediate_repeat1,
STATE(649), 1,
sym__ns_delim,
ACTIONS(219), 2,
sym__concat,
anon_sym_LPAREN,
ACTIONS(221), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[5650] = 5,
ACTIONS(500), 1,
anon_sym_COLON_COLON,
STATE(104), 1,
aux_sym__id_immediate_repeat1,
STATE(649), 1,
sym__ns_delim,
ACTIONS(215), 2,
sym__concat,
anon_sym_LPAREN,
ACTIONS(217), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[5676] = 11,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(459), 1,
anon_sym_RBRACK,
ACTIONS(502), 1,
sym_unpack,
STATE(663), 1,
sym_word_list,
STATE(114), 3,
sym__concat_word,
sym_braced_word,
aux_sym_word_list_repeat1,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[5714] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(469), 1,
anon_sym_LBRACE,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
STATE(535), 1,
sym__word_simple,
ACTIONS(461), 2,
sym_escaped_character,
sym_simple_word,
ACTIONS(507), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(504), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[5745] = 5,
ACTIONS(511), 1,
anon_sym_LPAREN,
ACTIONS(513), 1,
sym__concat,
STATE(152), 1,
aux_sym__concat_word_repeat1,
STATE(158), 1,
sym_array_index,
ACTIONS(509), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[5770] = 10,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(139), 1,
sym_escaped_character,
ACTIONS(457), 1,
sym_unpack,
STATE(587), 1,
sym_word_list,
STATE(100), 3,
sym__concat_word,
sym_braced_word,
aux_sym_word_list_repeat1,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[5805] = 10,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(502), 1,
sym_unpack,
STATE(614), 1,
sym_word_list,
STATE(114), 3,
sym__concat_word,
sym_braced_word,
aux_sym_word_list_repeat1,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[5840] = 11,
ACTIONS(463), 1,
anon_sym_RBRACK,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(517), 1,
anon_sym_LPAREN,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(166), 1,
sym_array_index,
STATE(688), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[5877] = 10,
ACTIONS(478), 1,
anon_sym_RBRACK,
ACTIONS(529), 1,
sym_simple_word,
ACTIONS(532), 1,
sym_unpack,
ACTIONS(535), 1,
anon_sym_DOLLAR,
ACTIONS(538), 1,
anon_sym_LBRACE,
ACTIONS(541), 1,
anon_sym_DQUOTE,
ACTIONS(544), 1,
sym_escaped_character,
ACTIONS(547), 1,
anon_sym_LBRACK,
STATE(113), 3,
sym__concat_word,
sym_braced_word,
aux_sym_word_list_repeat1,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[5912] = 10,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(498), 1,
anon_sym_RBRACK,
ACTIONS(502), 1,
sym_unpack,
STATE(113), 3,
sym__concat_word,
sym_braced_word,
aux_sym_word_list_repeat1,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[5947] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(469), 1,
anon_sym_LBRACE,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
STATE(536), 1,
sym__word_simple,
ACTIONS(461), 2,
sym_escaped_character,
sym_simple_word,
ACTIONS(550), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(504), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[5978] = 8,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
STATE(131), 2,
sym__concat_word,
aux_sym_regexp_repeat1,
ACTIONS(552), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[6008] = 5,
ACTIONS(554), 1,
anon_sym_COLON_COLON,
STATE(123), 1,
aux_sym__id_immediate_repeat1,
STATE(621), 1,
sym__ns_delim,
ACTIONS(215), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(217), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[6032] = 8,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
STATE(144), 2,
sym__concat_word,
aux_sym_regexp_repeat1,
ACTIONS(556), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[6062] = 5,
ACTIONS(226), 1,
anon_sym_LPAREN,
ACTIONS(558), 1,
anon_sym_COLON_COLON,
STATE(119), 1,
aux_sym__id_immediate_repeat1,
STATE(696), 1,
sym__ns_delim,
ACTIONS(228), 9,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6086] = 9,
ACTIONS(561), 1,
sym_simple_word,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(567), 1,
anon_sym_RBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(571), 1,
sym_escaped_character,
ACTIONS(573), 1,
anon_sym_LBRACK,
STATE(145), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6118] = 2,
ACTIONS(226), 2,
sym__concat,
anon_sym_LPAREN,
ACTIONS(228), 11,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_COLON_COLON,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6136] = 5,
ACTIONS(554), 1,
anon_sym_COLON_COLON,
STATE(135), 1,
aux_sym__id_immediate_repeat1,
STATE(621), 1,
sym__ns_delim,
ACTIONS(230), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(232), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[6160] = 5,
ACTIONS(554), 1,
anon_sym_COLON_COLON,
STATE(127), 1,
aux_sym__id_immediate_repeat1,
STATE(621), 1,
sym__ns_delim,
ACTIONS(219), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(221), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[6184] = 4,
ACTIONS(240), 1,
sym__concat,
ACTIONS(511), 1,
anon_sym_LPAREN,
STATE(276), 1,
sym_array_index,
ACTIONS(242), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6206] = 9,
ACTIONS(561), 1,
sym_simple_word,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(571), 1,
sym_escaped_character,
ACTIONS(573), 1,
anon_sym_LBRACK,
ACTIONS(575), 1,
anon_sym_RBRACE,
STATE(126), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6238] = 9,
ACTIONS(561), 1,
sym_simple_word,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(571), 1,
sym_escaped_character,
ACTIONS(573), 1,
anon_sym_LBRACK,
ACTIONS(577), 1,
anon_sym_RBRACE,
STATE(143), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6270] = 5,
ACTIONS(579), 1,
anon_sym_COLON_COLON,
STATE(127), 1,
aux_sym__id_immediate_repeat1,
STATE(621), 1,
sym__ns_delim,
ACTIONS(226), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(228), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[6294] = 5,
ACTIONS(584), 1,
anon_sym_COLON_COLON,
ACTIONS(586), 1,
anon_sym_LPAREN,
STATE(119), 1,
aux_sym__id_immediate_repeat1,
STATE(696), 1,
sym__ns_delim,
ACTIONS(582), 9,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6318] = 9,
ACTIONS(561), 1,
sym_simple_word,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(571), 1,
sym_escaped_character,
ACTIONS(573), 1,
anon_sym_LBRACK,
ACTIONS(588), 1,
anon_sym_RBRACE,
STATE(130), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6350] = 9,
ACTIONS(561), 1,
sym_simple_word,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(571), 1,
sym_escaped_character,
ACTIONS(573), 1,
anon_sym_LBRACK,
ACTIONS(590), 1,
anon_sym_RBRACE,
STATE(143), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6382] = 8,
ACTIONS(592), 1,
sym_simple_word,
ACTIONS(597), 1,
anon_sym_DOLLAR,
ACTIONS(600), 1,
anon_sym_DQUOTE,
ACTIONS(603), 1,
sym_escaped_character,
ACTIONS(606), 1,
anon_sym_LBRACK,
STATE(131), 2,
sym__concat_word,
aux_sym_regexp_repeat1,
ACTIONS(595), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[6412] = 9,
ACTIONS(561), 1,
sym_simple_word,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(571), 1,
sym_escaped_character,
ACTIONS(573), 1,
anon_sym_LBRACK,
ACTIONS(609), 1,
anon_sym_RBRACE,
STATE(133), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6444] = 9,
ACTIONS(561), 1,
sym_simple_word,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(571), 1,
sym_escaped_character,
ACTIONS(573), 1,
anon_sym_LBRACK,
ACTIONS(611), 1,
anon_sym_RBRACE,
STATE(143), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6476] = 5,
ACTIONS(584), 1,
anon_sym_COLON_COLON,
ACTIONS(615), 1,
anon_sym_LPAREN,
STATE(139), 1,
aux_sym__id_immediate_repeat1,
STATE(696), 1,
sym__ns_delim,
ACTIONS(613), 9,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6500] = 5,
ACTIONS(554), 1,
anon_sym_COLON_COLON,
STATE(127), 1,
aux_sym__id_immediate_repeat1,
STATE(621), 1,
sym__ns_delim,
ACTIONS(215), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(217), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[6524] = 8,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
STATE(116), 2,
sym__concat_word,
aux_sym_regexp_repeat1,
ACTIONS(617), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[6554] = 9,
ACTIONS(561), 1,
sym_simple_word,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(571), 1,
sym_escaped_character,
ACTIONS(573), 1,
anon_sym_LBRACK,
ACTIONS(619), 1,
anon_sym_RBRACE,
STATE(138), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6586] = 9,
ACTIONS(561), 1,
sym_simple_word,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(571), 1,
sym_escaped_character,
ACTIONS(573), 1,
anon_sym_LBRACK,
ACTIONS(621), 1,
anon_sym_RBRACE,
STATE(143), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6618] = 5,
ACTIONS(584), 1,
anon_sym_COLON_COLON,
ACTIONS(625), 1,
anon_sym_LPAREN,
STATE(119), 1,
aux_sym__id_immediate_repeat1,
STATE(696), 1,
sym__ns_delim,
ACTIONS(623), 9,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6642] = 5,
ACTIONS(584), 1,
anon_sym_COLON_COLON,
ACTIONS(625), 1,
anon_sym_LPAREN,
STATE(128), 1,
aux_sym__id_immediate_repeat1,
STATE(696), 1,
sym__ns_delim,
ACTIONS(623), 9,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6666] = 4,
ACTIONS(236), 1,
sym__concat,
ACTIONS(511), 1,
anon_sym_LPAREN,
STATE(268), 1,
sym_array_index,
ACTIONS(238), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6688] = 4,
ACTIONS(511), 1,
anon_sym_LPAREN,
ACTIONS(629), 1,
sym__concat,
STATE(262), 1,
sym_array_index,
ACTIONS(627), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6710] = 9,
ACTIONS(631), 1,
sym_simple_word,
ACTIONS(634), 1,
anon_sym_DOLLAR,
ACTIONS(637), 1,
anon_sym_LBRACE,
ACTIONS(640), 1,
anon_sym_RBRACE,
ACTIONS(642), 1,
anon_sym_DQUOTE,
ACTIONS(645), 1,
sym_escaped_character,
ACTIONS(648), 1,
anon_sym_LBRACK,
STATE(143), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6742] = 8,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(41), 1,
sym_escaped_character,
ACTIONS(43), 1,
anon_sym_LBRACK,
STATE(131), 2,
sym__concat_word,
aux_sym_regexp_repeat1,
ACTIONS(651), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[6772] = 9,
ACTIONS(561), 1,
sym_simple_word,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(571), 1,
sym_escaped_character,
ACTIONS(573), 1,
anon_sym_LBRACK,
ACTIONS(653), 1,
anon_sym_RBRACE,
STATE(143), 2,
sym__word_simple,
aux_sym_braced_word_simple_repeat1,
STATE(336), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[6804] = 3,
ACTIONS(513), 1,
sym__concat,
STATE(188), 1,
aux_sym__concat_word_repeat1,
ACTIONS(655), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6823] = 9,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(657), 1,
sym_unpack,
STATE(296), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[6854] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(661), 1,
sym_unpack,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(372), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[6885] = 9,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(669), 1,
sym_unpack,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
STATE(699), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[6916] = 9,
ACTIONS(675), 1,
sym_simple_word,
ACTIONS(677), 1,
sym_unpack,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(681), 1,
anon_sym_LBRACE,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(685), 1,
sym_escaped_character,
ACTIONS(687), 1,
anon_sym_LBRACK,
STATE(454), 2,
sym__concat_word,
sym_braced_word,
STATE(395), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[6947] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(691), 1,
sym_escaped_character,
STATE(531), 1,
sym__concat_word,
ACTIONS(689), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[6976] = 3,
ACTIONS(513), 1,
sym__concat,
STATE(188), 1,
aux_sym__concat_word_repeat1,
ACTIONS(693), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[6995] = 9,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
ACTIONS(695), 1,
sym_unpack,
STATE(604), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7026] = 9,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
ACTIONS(697), 1,
sym_unpack,
STATE(667), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7057] = 8,
ACTIONS(699), 1,
sym_simple_word,
ACTIONS(701), 1,
anon_sym_DOLLAR,
ACTIONS(703), 1,
anon_sym_LBRACE,
ACTIONS(707), 1,
anon_sym_DQUOTE,
ACTIONS(709), 1,
anon_sym_LBRACK,
STATE(571), 1,
sym_expr,
ACTIONS(705), 2,
sym__number,
sym__boolean,
STATE(552), 4,
sym_variable_substitution,
sym__expr_atom_no_brace,
sym_quoted_word,
sym_command_substitution,
[7086] = 9,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
ACTIONS(711), 1,
sym_unpack,
STATE(606), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7117] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
ACTIONS(713), 1,
sym_unpack,
STATE(554), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7148] = 3,
ACTIONS(513), 1,
sym__concat,
STATE(146), 1,
aux_sym__concat_word_repeat1,
ACTIONS(693), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[7167] = 9,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
ACTIONS(715), 1,
sym_unpack,
STATE(661), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7198] = 9,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
ACTIONS(717), 1,
sym_unpack,
STATE(605), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7229] = 9,
ACTIONS(675), 1,
sym_simple_word,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(681), 1,
anon_sym_LBRACE,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(685), 1,
sym_escaped_character,
ACTIONS(687), 1,
anon_sym_LBRACK,
ACTIONS(719), 1,
sym_unpack,
STATE(548), 2,
sym__concat_word,
sym_braced_word,
STATE(395), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7260] = 9,
ACTIONS(675), 1,
sym_simple_word,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(681), 1,
anon_sym_LBRACE,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(685), 1,
sym_escaped_character,
ACTIONS(687), 1,
anon_sym_LBRACK,
ACTIONS(721), 1,
sym_unpack,
STATE(550), 2,
sym__concat_word,
sym_braced_word,
STATE(395), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7291] = 9,
ACTIONS(675), 1,
sym_simple_word,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(681), 1,
anon_sym_LBRACE,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(685), 1,
sym_escaped_character,
ACTIONS(687), 1,
anon_sym_LBRACK,
ACTIONS(723), 1,
sym_unpack,
STATE(553), 2,
sym__concat_word,
sym_braced_word,
STATE(395), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7322] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
ACTIONS(725), 1,
sym_unpack,
STATE(549), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7353] = 9,
ACTIONS(507), 1,
anon_sym_RBRACK,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(666), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[7384] = 9,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(550), 1,
anon_sym_RBRACK,
STATE(685), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[7415] = 8,
ACTIONS(727), 1,
sym_simple_word,
ACTIONS(729), 1,
anon_sym_DOLLAR,
ACTIONS(731), 1,
anon_sym_LBRACE,
ACTIONS(735), 1,
anon_sym_DQUOTE,
ACTIONS(737), 1,
anon_sym_LBRACK,
STATE(194), 1,
sym_expr,
ACTIONS(733), 2,
sym__number,
sym__boolean,
STATE(416), 4,
sym_variable_substitution,
sym__expr_atom_no_brace,
sym_quoted_word,
sym_command_substitution,
[7444] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
ACTIONS(739), 1,
sym_unpack,
STATE(586), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7475] = 9,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(139), 1,
sym_escaped_character,
ACTIONS(741), 1,
sym_unpack,
STATE(151), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7506] = 3,
ACTIONS(513), 1,
sym__concat,
STATE(152), 1,
aux_sym__concat_word_repeat1,
ACTIONS(509), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[7525] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
ACTIONS(743), 1,
sym_unpack,
STATE(563), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7556] = 6,
ACTIONS(745), 1,
anon_sym_LPAREN,
ACTIONS(747), 1,
sym_escaped_character,
ACTIONS(749), 1,
sym__concat,
STATE(291), 1,
aux_sym__concat_word_repeat1,
STATE(292), 1,
sym_array_index,
ACTIONS(509), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[7581] = 5,
ACTIONS(751), 1,
anon_sym_COLON_COLON,
STATE(178), 1,
aux_sym__id_immediate_repeat1,
STATE(610), 1,
sym__ns_delim,
ACTIONS(230), 3,
sym__concat,
anon_sym_LF,
anon_sym_LPAREN,
ACTIONS(232), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[7604] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
ACTIONS(753), 1,
sym_unpack,
STATE(444), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7635] = 5,
ACTIONS(755), 1,
anon_sym_COLON_COLON,
STATE(176), 1,
aux_sym__id_immediate_repeat1,
STATE(640), 1,
sym__ns_delim,
ACTIONS(230), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(232), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[7658] = 5,
ACTIONS(755), 1,
anon_sym_COLON_COLON,
STATE(183), 1,
aux_sym__id_immediate_repeat1,
STATE(640), 1,
sym__ns_delim,
ACTIONS(215), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(217), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[7681] = 5,
ACTIONS(755), 1,
anon_sym_COLON_COLON,
STATE(180), 1,
aux_sym__id_immediate_repeat1,
STATE(640), 1,
sym__ns_delim,
ACTIONS(215), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(217), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[7704] = 5,
ACTIONS(751), 1,
anon_sym_COLON_COLON,
STATE(192), 1,
aux_sym__id_immediate_repeat1,
STATE(610), 1,
sym__ns_delim,
ACTIONS(215), 3,
sym__concat,
anon_sym_LF,
anon_sym_LPAREN,
ACTIONS(217), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[7727] = 5,
ACTIONS(751), 1,
anon_sym_COLON_COLON,
STATE(187), 1,
aux_sym__id_immediate_repeat1,
STATE(610), 1,
sym__ns_delim,
ACTIONS(215), 3,
sym__concat,
anon_sym_LF,
anon_sym_LPAREN,
ACTIONS(217), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[7750] = 5,
ACTIONS(755), 1,
anon_sym_COLON_COLON,
STATE(183), 1,
aux_sym__id_immediate_repeat1,
STATE(640), 1,
sym__ns_delim,
ACTIONS(219), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(221), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[7773] = 8,
ACTIONS(727), 1,
sym_simple_word,
ACTIONS(729), 1,
anon_sym_DOLLAR,
ACTIONS(731), 1,
anon_sym_LBRACE,
ACTIONS(735), 1,
anon_sym_DQUOTE,
ACTIONS(737), 1,
anon_sym_LBRACK,
STATE(149), 1,
sym_expr,
ACTIONS(733), 2,
sym__number,
sym__boolean,
STATE(416), 4,
sym_variable_substitution,
sym__expr_atom_no_brace,
sym_quoted_word,
sym_command_substitution,
[7802] = 8,
ACTIONS(727), 1,
sym_simple_word,
ACTIONS(729), 1,
anon_sym_DOLLAR,
ACTIONS(731), 1,
anon_sym_LBRACE,
ACTIONS(735), 1,
anon_sym_DQUOTE,
ACTIONS(737), 1,
anon_sym_LBRACK,
STATE(150), 1,
sym_expr,
ACTIONS(733), 2,
sym__number,
sym__boolean,
STATE(416), 4,
sym_variable_substitution,
sym__expr_atom_no_brace,
sym_quoted_word,
sym_command_substitution,
[7831] = 5,
ACTIONS(757), 1,
anon_sym_COLON_COLON,
STATE(183), 1,
aux_sym__id_immediate_repeat1,
STATE(640), 1,
sym__ns_delim,
ACTIONS(226), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(228), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[7854] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
ACTIONS(760), 1,
sym_unpack,
STATE(541), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7885] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(691), 1,
sym_escaped_character,
STATE(547), 1,
sym__concat_word,
ACTIONS(762), 3,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[7914] = 8,
ACTIONS(727), 1,
sym_simple_word,
ACTIONS(729), 1,
anon_sym_DOLLAR,
ACTIONS(731), 1,
anon_sym_LBRACE,
ACTIONS(735), 1,
anon_sym_DQUOTE,
ACTIONS(737), 1,
anon_sym_LBRACK,
STATE(162), 1,
sym_expr,
ACTIONS(733), 2,
sym__number,
sym__boolean,
STATE(416), 4,
sym_variable_substitution,
sym__expr_atom_no_brace,
sym_quoted_word,
sym_command_substitution,
[7943] = 5,
ACTIONS(751), 1,
anon_sym_COLON_COLON,
STATE(192), 1,
aux_sym__id_immediate_repeat1,
STATE(610), 1,
sym__ns_delim,
ACTIONS(219), 3,
sym__concat,
anon_sym_LF,
anon_sym_LPAREN,
ACTIONS(221), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[7966] = 3,
ACTIONS(764), 1,
sym__concat,
STATE(188), 1,
aux_sym__concat_word_repeat1,
ACTIONS(627), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[7985] = 8,
ACTIONS(727), 1,
sym_simple_word,
ACTIONS(729), 1,
anon_sym_DOLLAR,
ACTIONS(731), 1,
anon_sym_LBRACE,
ACTIONS(735), 1,
anon_sym_DQUOTE,
ACTIONS(737), 1,
anon_sym_LBRACK,
STATE(199), 1,
sym_expr,
ACTIONS(733), 2,
sym__number,
sym__boolean,
STATE(416), 4,
sym_variable_substitution,
sym__expr_atom_no_brace,
sym_quoted_word,
sym_command_substitution,
[8014] = 8,
ACTIONS(347), 1,
sym_simple_word,
ACTIONS(767), 1,
anon_sym_DOLLAR,
ACTIONS(769), 1,
anon_sym_LBRACE,
ACTIONS(773), 1,
anon_sym_DQUOTE,
ACTIONS(775), 1,
anon_sym_LBRACK,
STATE(622), 1,
sym_expr,
ACTIONS(771), 2,
sym__number,
sym__boolean,
STATE(676), 4,
sym_variable_substitution,
sym__expr_atom_no_brace,
sym_quoted_word,
sym_command_substitution,
[8043] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
ACTIONS(777), 1,
sym_unpack,
STATE(455), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8074] = 5,
ACTIONS(779), 1,
anon_sym_COLON_COLON,
STATE(192), 1,
aux_sym__id_immediate_repeat1,
STATE(610), 1,
sym__ns_delim,
ACTIONS(226), 3,
sym__concat,
anon_sym_LF,
anon_sym_LPAREN,
ACTIONS(228), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[8097] = 9,
ACTIONS(675), 1,
sym_simple_word,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(681), 1,
anon_sym_LBRACE,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(685), 1,
sym_escaped_character,
ACTIONS(687), 1,
anon_sym_LBRACK,
ACTIONS(782), 1,
sym_unpack,
STATE(521), 2,
sym__concat_word,
sym_braced_word,
STATE(395), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8128] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
ACTIONS(784), 1,
sym_unpack,
STATE(488), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8159] = 9,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(786), 1,
sym_simple_word,
ACTIONS(788), 1,
sym_unpack,
ACTIONS(790), 1,
anon_sym_DOLLAR,
ACTIONS(792), 1,
sym_escaped_character,
STATE(555), 2,
sym__concat_word,
sym_braced_word,
STATE(514), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8190] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
ACTIONS(794), 1,
sym_unpack,
STATE(470), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8221] = 8,
ACTIONS(727), 1,
sym_simple_word,
ACTIONS(729), 1,
anon_sym_DOLLAR,
ACTIONS(731), 1,
anon_sym_LBRACE,
ACTIONS(735), 1,
anon_sym_DQUOTE,
ACTIONS(737), 1,
anon_sym_LBRACK,
STATE(148), 1,
sym_expr,
ACTIONS(733), 2,
sym__number,
sym__boolean,
STATE(416), 4,
sym_variable_substitution,
sym__expr_atom_no_brace,
sym_quoted_word,
sym_command_substitution,
[8250] = 9,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(786), 1,
sym_simple_word,
ACTIONS(790), 1,
anon_sym_DOLLAR,
ACTIONS(792), 1,
sym_escaped_character,
ACTIONS(796), 1,
sym_unpack,
STATE(567), 2,
sym__concat_word,
sym_braced_word,
STATE(514), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8281] = 9,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
ACTIONS(798), 1,
sym_unpack,
STATE(533), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8312] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(645), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[8340] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(538), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8368] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(470), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8396] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(482), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8424] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(493), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8452] = 8,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(617), 1,
anon_sym_RBRACK,
STATE(207), 2,
sym__concat_word,
aux_sym_regexp_repeat1,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8480] = 6,
ACTIONS(747), 1,
anon_sym_LF,
ACTIONS(800), 1,
anon_sym_LPAREN,
ACTIONS(802), 1,
sym__concat,
STATE(321), 1,
aux_sym__concat_word_repeat1,
STATE(322), 1,
sym_array_index,
ACTIONS(509), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[8504] = 8,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(552), 1,
anon_sym_RBRACK,
STATE(214), 2,
sym__concat_word,
aux_sym_regexp_repeat1,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8532] = 8,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
STATE(377), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8560] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(348), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8588] = 4,
ACTIONS(745), 1,
anon_sym_LPAREN,
STATE(310), 1,
sym_array_index,
ACTIONS(236), 2,
sym__concat,
sym_escaped_character,
ACTIONS(238), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[8608] = 5,
ACTIONS(804), 1,
anon_sym_COLON_COLON,
STATE(217), 1,
aux_sym__id_immediate_repeat1,
STATE(634), 1,
sym__ns_delim,
ACTIONS(615), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(613), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[8630] = 8,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
STATE(300), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8658] = 8,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(556), 1,
anon_sym_RBRACK,
STATE(219), 2,
sym__concat_word,
aux_sym_regexp_repeat1,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8686] = 8,
ACTIONS(595), 1,
anon_sym_RBRACK,
ACTIONS(806), 1,
sym_simple_word,
ACTIONS(809), 1,
anon_sym_DOLLAR,
ACTIONS(812), 1,
anon_sym_DQUOTE,
ACTIONS(815), 1,
sym_escaped_character,
ACTIONS(818), 1,
anon_sym_LBRACK,
STATE(214), 2,
sym__concat_word,
aux_sym_regexp_repeat1,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8714] = 2,
ACTIONS(260), 1,
sym__concat,
ACTIONS(262), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[8730] = 2,
ACTIONS(629), 1,
sym__concat,
ACTIONS(627), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[8746] = 5,
ACTIONS(804), 1,
anon_sym_COLON_COLON,
STATE(239), 1,
aux_sym__id_immediate_repeat1,
STATE(634), 1,
sym__ns_delim,
ACTIONS(625), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(623), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[8768] = 5,
ACTIONS(804), 1,
anon_sym_COLON_COLON,
STATE(223), 1,
aux_sym__id_immediate_repeat1,
STATE(634), 1,
sym__ns_delim,
ACTIONS(625), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(623), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[8790] = 8,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(651), 1,
anon_sym_RBRACK,
STATE(214), 2,
sym__concat_word,
aux_sym_regexp_repeat1,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8818] = 2,
ACTIONS(226), 1,
anon_sym_LPAREN,
ACTIONS(228), 10,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_COLON_COLON,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[8834] = 2,
ACTIONS(268), 1,
sym__concat,
ACTIONS(270), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[8850] = 4,
ACTIONS(745), 1,
anon_sym_LPAREN,
STATE(320), 1,
sym_array_index,
ACTIONS(240), 2,
sym__concat,
sym_escaped_character,
ACTIONS(242), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[8870] = 5,
ACTIONS(804), 1,
anon_sym_COLON_COLON,
STATE(239), 1,
aux_sym__id_immediate_repeat1,
STATE(634), 1,
sym__ns_delim,
ACTIONS(586), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(582), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[8892] = 8,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(786), 1,
sym_simple_word,
ACTIONS(790), 1,
anon_sym_DOLLAR,
ACTIONS(792), 1,
sym_escaped_character,
STATE(582), 2,
sym__concat_word,
sym_braced_word,
STATE(514), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[8920] = 5,
ACTIONS(821), 1,
anon_sym_COLON_COLON,
STATE(226), 1,
aux_sym__id_immediate_repeat1,
STATE(679), 1,
sym__ns_delim,
ACTIONS(230), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(232), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[8942] = 5,
ACTIONS(821), 1,
anon_sym_COLON_COLON,
STATE(231), 1,
aux_sym__id_immediate_repeat1,
STATE(679), 1,
sym__ns_delim,
ACTIONS(215), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(217), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[8964] = 5,
ACTIONS(821), 1,
anon_sym_COLON_COLON,
STATE(229), 1,
aux_sym__id_immediate_repeat1,
STATE(679), 1,
sym__ns_delim,
ACTIONS(215), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(217), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[8986] = 2,
ACTIONS(226), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(228), 8,
sym_unpack,
anon_sym_COLON_COLON,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[9002] = 5,
ACTIONS(821), 1,
anon_sym_COLON_COLON,
STATE(231), 1,
aux_sym__id_immediate_repeat1,
STATE(679), 1,
sym__ns_delim,
ACTIONS(219), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(221), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[9024] = 4,
ACTIONS(745), 1,
anon_sym_LPAREN,
STATE(331), 1,
sym_array_index,
ACTIONS(629), 2,
sym__concat,
sym_escaped_character,
ACTIONS(627), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[9044] = 5,
ACTIONS(823), 1,
anon_sym_COLON_COLON,
STATE(231), 1,
aux_sym__id_immediate_repeat1,
STATE(679), 1,
sym__ns_delim,
ACTIONS(226), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(228), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[9066] = 8,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(139), 1,
sym_escaped_character,
STATE(185), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9094] = 2,
ACTIONS(256), 1,
sym__concat,
ACTIONS(258), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[9110] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(576), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9138] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(695), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[9166] = 5,
ACTIONS(232), 1,
anon_sym_else,
ACTIONS(826), 1,
anon_sym_COLON_COLON,
STATE(237), 1,
aux_sym__id_immediate_repeat1,
STATE(646), 1,
sym__ns_delim,
ACTIONS(230), 7,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_elseif,
anon_sym_RBRACK,
[9188] = 5,
ACTIONS(217), 1,
anon_sym_else,
ACTIONS(826), 1,
anon_sym_COLON_COLON,
STATE(241), 1,
aux_sym__id_immediate_repeat1,
STATE(646), 1,
sym__ns_delim,
ACTIONS(215), 7,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_elseif,
anon_sym_RBRACK,
[9210] = 5,
ACTIONS(217), 1,
anon_sym_else,
ACTIONS(826), 1,
anon_sym_COLON_COLON,
STATE(279), 1,
aux_sym__id_immediate_repeat1,
STATE(646), 1,
sym__ns_delim,
ACTIONS(215), 7,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_elseif,
anon_sym_RBRACK,
[9232] = 5,
ACTIONS(828), 1,
anon_sym_COLON_COLON,
STATE(239), 1,
aux_sym__id_immediate_repeat1,
STATE(634), 1,
sym__ns_delim,
ACTIONS(226), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(228), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[9254] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(647), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[9282] = 5,
ACTIONS(228), 1,
anon_sym_else,
ACTIONS(831), 1,
anon_sym_COLON_COLON,
STATE(241), 1,
aux_sym__id_immediate_repeat1,
STATE(646), 1,
sym__ns_delim,
ACTIONS(226), 7,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_elseif,
anon_sym_RBRACK,
[9304] = 8,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(834), 1,
sym_simple_word,
ACTIONS(836), 1,
sym_escaped_character,
STATE(333), 1,
sym__word_simple,
STATE(400), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[9332] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(579), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9360] = 8,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(179), 1,
anon_sym_LBRACE,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
STATE(103), 2,
sym__concat_word,
sym_braced_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9388] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(583), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9416] = 8,
ACTIONS(675), 1,
sym_simple_word,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(681), 1,
anon_sym_LBRACE,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(685), 1,
sym_escaped_character,
ACTIONS(687), 1,
anon_sym_LBRACK,
STATE(519), 2,
sym__concat_word,
sym_braced_word,
STATE(395), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9444] = 8,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(838), 1,
sym_simple_word,
ACTIONS(840), 1,
anon_sym_LBRACE,
ACTIONS(842), 1,
sym_escaped_character,
STATE(157), 1,
sym__word_simple,
STATE(314), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[9472] = 8,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(834), 1,
sym_simple_word,
ACTIONS(836), 1,
sym_escaped_character,
STATE(335), 1,
sym__word_simple,
STATE(400), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[9500] = 8,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(139), 1,
sym_escaped_character,
STATE(295), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9528] = 8,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
STATE(602), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9556] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(544), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9584] = 8,
ACTIONS(675), 1,
sym_simple_word,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(681), 1,
anon_sym_LBRACE,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(685), 1,
sym_escaped_character,
ACTIONS(687), 1,
anon_sym_LBRACK,
STATE(446), 2,
sym__concat_word,
sym_braced_word,
STATE(395), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9612] = 8,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
STATE(632), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9640] = 8,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
STATE(655), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9668] = 8,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
STATE(691), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9696] = 8,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
STATE(670), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9724] = 8,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(673), 1,
sym_escaped_character,
STATE(693), 2,
sym__concat_word,
sym_braced_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9752] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(540), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9780] = 8,
ACTIONS(675), 1,
sym_simple_word,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(681), 1,
anon_sym_LBRACE,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(685), 1,
sym_escaped_character,
ACTIONS(687), 1,
anon_sym_LBRACK,
STATE(553), 2,
sym__concat_word,
sym_braced_word,
STATE(395), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9808] = 8,
ACTIONS(675), 1,
sym_simple_word,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(681), 1,
anon_sym_LBRACE,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(685), 1,
sym_escaped_character,
ACTIONS(687), 1,
anon_sym_LBRACK,
STATE(560), 2,
sym__concat_word,
sym_braced_word,
STATE(395), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9836] = 8,
ACTIONS(675), 1,
sym_simple_word,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(681), 1,
anon_sym_LBRACE,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(685), 1,
sym_escaped_character,
ACTIONS(687), 1,
anon_sym_LBRACK,
STATE(561), 2,
sym__concat_word,
sym_braced_word,
STATE(395), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9864] = 2,
ACTIONS(846), 1,
sym__concat,
ACTIONS(844), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[9880] = 2,
ACTIONS(248), 1,
sym__concat,
ACTIONS(250), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[9896] = 8,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(659), 1,
sym_simple_word,
ACTIONS(663), 1,
anon_sym_LBRACE,
ACTIONS(665), 1,
sym_escaped_character,
STATE(445), 2,
sym__concat_word,
sym_braced_word,
STATE(305), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9924] = 8,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(29), 1,
anon_sym_LBRACE,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(139), 1,
sym_escaped_character,
STATE(96), 2,
sym__concat_word,
sym_braced_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[9952] = 8,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(838), 1,
sym_simple_word,
ACTIONS(840), 1,
anon_sym_LBRACE,
ACTIONS(842), 1,
sym_escaped_character,
STATE(153), 1,
sym__word_simple,
STATE(314), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[9980] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(709), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10008] = 2,
ACTIONS(264), 1,
sym__concat,
ACTIONS(266), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[10024] = 8,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(671), 1,
anon_sym_LBRACE,
ACTIONS(786), 1,
sym_simple_word,
ACTIONS(790), 1,
anon_sym_DOLLAR,
ACTIONS(792), 1,
sym_escaped_character,
STATE(570), 2,
sym__concat_word,
sym_braced_word,
STATE(514), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[10052] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(654), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10080] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(686), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10108] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(603), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10136] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(612), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10164] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(620), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10192] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(628), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10220] = 2,
ACTIONS(244), 1,
sym__concat,
ACTIONS(246), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[10236] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(636), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10264] = 8,
ACTIONS(515), 1,
sym_simple_word,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(525), 1,
sym_escaped_character,
ACTIONS(527), 1,
anon_sym_LBRACK,
STATE(642), 1,
sym__word_simple,
STATE(512), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10292] = 5,
ACTIONS(221), 1,
anon_sym_else,
ACTIONS(826), 1,
anon_sym_COLON_COLON,
STATE(241), 1,
aux_sym__id_immediate_repeat1,
STATE(646), 1,
sym__ns_delim,
ACTIONS(219), 7,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_elseif,
anon_sym_RBRACK,
[10314] = 1,
ACTIONS(848), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[10327] = 4,
ACTIONS(800), 1,
anon_sym_LPAREN,
STATE(338), 1,
sym_array_index,
ACTIONS(240), 2,
sym__concat,
anon_sym_LF,
ACTIONS(242), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[10346] = 2,
ACTIONS(226), 4,
sym__concat,
anon_sym_LF,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(228), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[10361] = 4,
ACTIONS(800), 1,
anon_sym_LPAREN,
STATE(373), 1,
sym_array_index,
ACTIONS(629), 2,
sym__concat,
anon_sym_LF,
ACTIONS(627), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[10380] = 4,
ACTIONS(850), 1,
anon_sym_LPAREN,
STATE(343), 1,
sym_array_index,
ACTIONS(236), 2,
sym__concat,
sym_escaped_character,
ACTIONS(238), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[10399] = 7,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(852), 1,
sym_simple_word,
ACTIONS(854), 1,
sym_escaped_character,
STATE(342), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10424] = 4,
ACTIONS(850), 1,
anon_sym_LPAREN,
STATE(351), 1,
sym_array_index,
ACTIONS(240), 2,
sym__concat,
sym_escaped_character,
ACTIONS(242), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[10443] = 2,
ACTIONS(226), 3,
sym__concat,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(228), 7,
anon_sym_COLON_COLON,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[10458] = 7,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(840), 1,
anon_sym_LBRACE,
ACTIONS(856), 1,
sym_simple_word,
ACTIONS(858), 1,
sym_escaped_character,
STATE(378), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10483] = 1,
ACTIONS(860), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[10496] = 4,
ACTIONS(747), 1,
sym_escaped_character,
ACTIONS(749), 1,
sym__concat,
STATE(291), 1,
aux_sym__concat_word_repeat1,
ACTIONS(509), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[10515] = 4,
ACTIONS(749), 1,
sym__concat,
ACTIONS(862), 1,
sym_escaped_character,
STATE(297), 1,
aux_sym__concat_word_repeat1,
ACTIONS(693), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[10534] = 4,
ACTIONS(749), 1,
sym__concat,
ACTIONS(862), 1,
sym_escaped_character,
STATE(298), 1,
aux_sym__concat_word_repeat1,
ACTIONS(693), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[10553] = 7,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(469), 1,
anon_sym_LBRACE,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(864), 1,
sym_simple_word,
ACTIONS(866), 1,
sym_escaped_character,
STATE(526), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10578] = 7,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(521), 1,
anon_sym_LBRACE,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(868), 1,
sym_simple_word,
ACTIONS(870), 1,
sym_escaped_character,
STATE(546), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10603] = 1,
ACTIONS(478), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[10616] = 8,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(673), 1,
sym_escaped_character,
ACTIONS(689), 1,
anon_sym_RBRACK,
STATE(627), 1,
sym__concat_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[10643] = 4,
ACTIONS(629), 1,
sym_escaped_character,
ACTIONS(872), 1,
sym__concat,
STATE(297), 1,
aux_sym__concat_word_repeat1,
ACTIONS(627), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[10662] = 4,
ACTIONS(749), 1,
sym__concat,
ACTIONS(875), 1,
sym_escaped_character,
STATE(297), 1,
aux_sym__concat_word_repeat1,
ACTIONS(655), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[10681] = 7,
ACTIONS(563), 1,
anon_sym_DOLLAR,
ACTIONS(565), 1,
anon_sym_LBRACE,
ACTIONS(569), 1,
anon_sym_DQUOTE,
ACTIONS(573), 1,
anon_sym_LBRACK,
ACTIONS(852), 1,
sym_simple_word,
ACTIONS(854), 1,
sym_escaped_character,
STATE(342), 4,
sym_variable_substitution,
sym_braced_word_simple,
sym_quoted_word,
sym_command_substitution,
[10706] = 8,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(667), 1,
sym_simple_word,
ACTIONS(673), 1,
sym_escaped_character,
ACTIONS(762), 1,
anon_sym_RBRACK,
STATE(692), 1,
sym__concat_word,
STATE(590), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[10733] = 4,
ACTIONS(800), 1,
anon_sym_LPAREN,
STATE(384), 1,
sym_array_index,
ACTIONS(236), 2,
sym__concat,
anon_sym_LF,
ACTIONS(238), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[10752] = 1,
ACTIONS(877), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[10765] = 1,
ACTIONS(879), 10,
anon_sym_LF,
anon_sym_SEMI,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[10778] = 2,
ACTIONS(629), 2,
sym__concat,
sym_escaped_character,
ACTIONS(627), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[10792] = 4,
ACTIONS(747), 1,
anon_sym_LF,
ACTIONS(802), 1,
sym__concat,
STATE(321), 1,
aux_sym__concat_word_repeat1,
ACTIONS(509), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[10810] = 4,
ACTIONS(236), 1,
sym_escaped_character,
ACTIONS(881), 1,
anon_sym_LPAREN,
STATE(424), 1,
sym_array_index,
ACTIONS(238), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[10828] = 5,
ACTIONS(219), 1,
anon_sym_LPAREN,
ACTIONS(883), 1,
anon_sym_COLON_COLON,
STATE(313), 1,
aux_sym__id_immediate_repeat1,
STATE(626), 1,
sym__ns_delim,
ACTIONS(221), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[10848] = 4,
ACTIONS(629), 1,
anon_sym_LF,
ACTIONS(885), 1,
sym__concat,
STATE(308), 1,
aux_sym__concat_word_repeat1,
ACTIONS(627), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[10866] = 2,
ACTIONS(260), 2,
sym__concat,
sym_escaped_character,
ACTIONS(262), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[10880] = 2,
ACTIONS(264), 2,
sym__concat,
sym_escaped_character,
ACTIONS(266), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[10894] = 4,
ACTIONS(240), 1,
sym_escaped_character,
ACTIONS(881), 1,
anon_sym_LPAREN,
STATE(427), 1,
sym_array_index,
ACTIONS(242), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[10912] = 1,
ACTIONS(250), 9,
anon_sym_LF,
anon_sym_SEMI,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
sym_escaped_character,
anon_sym_LBRACK,
sym_simple_word,
[10924] = 5,
ACTIONS(226), 1,
anon_sym_LPAREN,
ACTIONS(888), 1,
anon_sym_COLON_COLON,
STATE(313), 1,
aux_sym__id_immediate_repeat1,
STATE(626), 1,
sym__ns_delim,
ACTIONS(228), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[10944] = 4,
ACTIONS(893), 1,
sym_escaped_character,
ACTIONS(895), 1,
sym__concat,
STATE(318), 1,
aux_sym__word_simple_repeat1,
ACTIONS(891), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[10962] = 2,
ACTIONS(268), 2,
sym__concat,
sym_escaped_character,
ACTIONS(270), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[10976] = 4,
ACTIONS(802), 1,
sym__concat,
ACTIONS(875), 1,
anon_sym_LF,
STATE(308), 1,
aux_sym__concat_word_repeat1,
ACTIONS(655), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[10994] = 2,
ACTIONS(256), 2,
sym__concat,
sym_escaped_character,
ACTIONS(258), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[11008] = 4,
ACTIONS(895), 1,
sym__concat,
ACTIONS(899), 1,
sym_escaped_character,
STATE(328), 1,
aux_sym__word_simple_repeat1,
ACTIONS(897), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11026] = 2,
ACTIONS(226), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(228), 7,
anon_sym_COLON_COLON,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[11040] = 2,
ACTIONS(244), 2,
sym__concat,
sym_escaped_character,
ACTIONS(246), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[11054] = 4,
ACTIONS(802), 1,
sym__concat,
ACTIONS(862), 1,
anon_sym_LF,
STATE(308), 1,
aux_sym__concat_word_repeat1,
ACTIONS(693), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[11072] = 4,
ACTIONS(802), 1,
sym__concat,
ACTIONS(862), 1,
anon_sym_LF,
STATE(316), 1,
aux_sym__concat_word_repeat1,
ACTIONS(693), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[11090] = 5,
ACTIONS(230), 1,
anon_sym_LPAREN,
ACTIONS(883), 1,
anon_sym_COLON_COLON,
STATE(324), 1,
aux_sym__id_immediate_repeat1,
STATE(626), 1,
sym__ns_delim,
ACTIONS(232), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[11110] = 5,
ACTIONS(215), 1,
anon_sym_LPAREN,
ACTIONS(883), 1,
anon_sym_COLON_COLON,
STATE(313), 1,
aux_sym__id_immediate_repeat1,
STATE(626), 1,
sym__ns_delim,
ACTIONS(217), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[11130] = 5,
ACTIONS(215), 1,
anon_sym_LPAREN,
ACTIONS(883), 1,
anon_sym_COLON_COLON,
STATE(307), 1,
aux_sym__id_immediate_repeat1,
STATE(626), 1,
sym__ns_delim,
ACTIONS(217), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[11150] = 4,
ACTIONS(899), 1,
sym_escaped_character,
ACTIONS(901), 1,
sym__concat,
STATE(327), 1,
aux_sym__word_simple_repeat1,
ACTIONS(897), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11168] = 4,
ACTIONS(905), 1,
sym_escaped_character,
ACTIONS(907), 1,
sym__concat,
STATE(327), 1,
aux_sym__word_simple_repeat1,
ACTIONS(903), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11186] = 4,
ACTIONS(905), 1,
sym_escaped_character,
ACTIONS(910), 1,
sym__concat,
STATE(328), 1,
aux_sym__word_simple_repeat1,
ACTIONS(903), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11204] = 2,
ACTIONS(226), 2,
anon_sym_LPAREN,
sym_escaped_character,
ACTIONS(228), 7,
sym_unpack,
anon_sym_COLON_COLON,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11218] = 2,
ACTIONS(228), 1,
anon_sym_else,
ACTIONS(226), 8,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
anon_sym_RPAREN,
anon_sym_elseif,
anon_sym_RBRACK,
[11232] = 2,
ACTIONS(846), 2,
sym__concat,
sym_escaped_character,
ACTIONS(844), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[11246] = 6,
ACTIONS(509), 1,
anon_sym_else,
ACTIONS(913), 1,
anon_sym_LPAREN,
ACTIONS(915), 1,
sym__concat,
STATE(398), 1,
aux_sym__concat_word_repeat1,
STATE(399), 1,
sym_array_index,
ACTIONS(747), 4,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[11268] = 7,
ACTIONS(157), 1,
sym_simple_word,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(191), 1,
sym_escaped_character,
ACTIONS(193), 1,
anon_sym_LBRACK,
STATE(213), 1,
sym__concat_word,
STATE(290), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[11292] = 2,
ACTIONS(248), 2,
sym__concat,
sym_escaped_character,
ACTIONS(250), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[11306] = 7,
ACTIONS(5), 1,
sym_simple_word,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(139), 1,
sym_escaped_character,
STATE(118), 1,
sym__concat_word,
STATE(170), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[11330] = 4,
ACTIONS(893), 1,
sym_escaped_character,
ACTIONS(901), 1,
sym__concat,
STATE(326), 1,
aux_sym__word_simple_repeat1,
ACTIONS(891), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11348] = 2,
ACTIONS(917), 1,
sym_escaped_character,
ACTIONS(877), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[11361] = 2,
ACTIONS(244), 2,
sym__concat,
anon_sym_LF,
ACTIONS(246), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[11374] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(921), 1,
anon_sym_DQUOTE,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(923), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(389), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11393] = 6,
ACTIONS(27), 1,
anon_sym_DOLLAR,
ACTIONS(39), 1,
anon_sym_DQUOTE,
ACTIONS(43), 1,
anon_sym_LBRACK,
ACTIONS(927), 1,
sym_simple_word,
ACTIONS(929), 1,
sym_escaped_character,
STATE(216), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[11414] = 4,
ACTIONS(627), 1,
anon_sym_else,
ACTIONS(913), 1,
anon_sym_LPAREN,
STATE(449), 1,
sym_array_index,
ACTIONS(629), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[11431] = 2,
ACTIONS(905), 2,
sym__concat,
sym_escaped_character,
ACTIONS(903), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11444] = 2,
ACTIONS(264), 2,
sym__concat,
sym_escaped_character,
ACTIONS(266), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11457] = 2,
ACTIONS(931), 1,
sym_escaped_character,
ACTIONS(860), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[11470] = 2,
ACTIONS(268), 2,
sym__concat,
sym_escaped_character,
ACTIONS(270), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11483] = 2,
ACTIONS(268), 2,
sym__concat,
anon_sym_LF,
ACTIONS(270), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[11496] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(933), 1,
anon_sym_DQUOTE,
ACTIONS(935), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(349), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11515] = 6,
ACTIONS(937), 1,
anon_sym_LF,
ACTIONS(941), 1,
anon_sym_elseif,
ACTIONS(943), 1,
anon_sym_else,
STATE(537), 1,
sym_else,
ACTIONS(939), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(385), 2,
sym_elseif,
aux_sym_conditional_repeat1,
[11536] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(945), 1,
anon_sym_DQUOTE,
ACTIONS(947), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(387), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11555] = 6,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(790), 1,
anon_sym_DOLLAR,
ACTIONS(949), 1,
sym_simple_word,
ACTIONS(951), 1,
sym_escaped_character,
STATE(518), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[11576] = 2,
ACTIONS(244), 2,
sym__concat,
sym_escaped_character,
ACTIONS(246), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11589] = 6,
ACTIONS(937), 1,
anon_sym_LF,
ACTIONS(941), 1,
anon_sym_elseif,
ACTIONS(943), 1,
anon_sym_else,
STATE(537), 1,
sym_else,
ACTIONS(939), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(432), 2,
sym_elseif,
aux_sym_conditional_repeat1,
[11610] = 2,
ACTIONS(308), 2,
sym__concat,
sym_escaped_character,
ACTIONS(310), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11623] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(953), 1,
anon_sym_DQUOTE,
ACTIONS(955), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(356), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11642] = 2,
ACTIONS(957), 1,
sym_escaped_character,
ACTIONS(848), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[11655] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(959), 1,
anon_sym_DQUOTE,
ACTIONS(947), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(387), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11674] = 6,
ACTIONS(177), 1,
anon_sym_DOLLAR,
ACTIONS(189), 1,
anon_sym_DQUOTE,
ACTIONS(193), 1,
anon_sym_LBRACK,
ACTIONS(961), 1,
sym_simple_word,
ACTIONS(963), 1,
sym_escaped_character,
STATE(304), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[11695] = 2,
ACTIONS(629), 2,
sym__concat,
anon_sym_LF,
ACTIONS(627), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[11708] = 2,
ACTIONS(248), 2,
sym__concat,
sym_escaped_character,
ACTIONS(250), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11721] = 4,
ACTIONS(238), 1,
anon_sym_else,
ACTIONS(913), 1,
anon_sym_LPAREN,
STATE(441), 1,
sym_array_index,
ACTIONS(236), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[11738] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(965), 1,
anon_sym_DQUOTE,
ACTIONS(967), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(362), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11757] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(969), 1,
anon_sym_DQUOTE,
ACTIONS(947), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(387), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11776] = 6,
ACTIONS(679), 1,
anon_sym_DOLLAR,
ACTIONS(683), 1,
anon_sym_DQUOTE,
ACTIONS(687), 1,
anon_sym_LBRACK,
ACTIONS(971), 1,
sym_simple_word,
ACTIONS(973), 1,
sym_escaped_character,
STATE(453), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[11797] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(975), 1,
anon_sym_DQUOTE,
ACTIONS(977), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(393), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11816] = 2,
ACTIONS(312), 2,
sym__concat,
sym_escaped_character,
ACTIONS(314), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[11829] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(979), 1,
anon_sym_DQUOTE,
ACTIONS(981), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(367), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11848] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(983), 1,
anon_sym_DQUOTE,
ACTIONS(947), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(387), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11867] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(985), 1,
anon_sym_DQUOTE,
ACTIONS(987), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(369), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11886] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(989), 1,
anon_sym_DQUOTE,
ACTIONS(947), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(387), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11905] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(991), 1,
anon_sym_DQUOTE,
ACTIONS(993), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(371), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11924] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(995), 1,
anon_sym_DQUOTE,
ACTIONS(947), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(387), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[11943] = 6,
ACTIONS(941), 1,
anon_sym_elseif,
ACTIONS(943), 1,
anon_sym_else,
ACTIONS(997), 1,
anon_sym_LF,
STATE(545), 1,
sym_else,
ACTIONS(999), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(352), 2,
sym_elseif,
aux_sym_conditional_repeat1,
[11964] = 2,
ACTIONS(846), 2,
sym__concat,
anon_sym_LF,
ACTIONS(844), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[11977] = 2,
ACTIONS(248), 2,
sym__concat,
anon_sym_LF,
ACTIONS(250), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[11990] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(1001), 1,
anon_sym_DQUOTE,
ACTIONS(1003), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(381), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[12009] = 2,
ACTIONS(256), 2,
sym__concat,
sym_escaped_character,
ACTIONS(258), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12022] = 2,
ACTIONS(1005), 1,
sym_escaped_character,
ACTIONS(478), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[12035] = 2,
ACTIONS(905), 2,
sym__concat,
sym_escaped_character,
ACTIONS(903), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12048] = 6,
ACTIONS(519), 1,
anon_sym_DOLLAR,
ACTIONS(523), 1,
anon_sym_DQUOTE,
ACTIONS(527), 1,
anon_sym_LBRACK,
ACTIONS(949), 1,
sym_simple_word,
ACTIONS(951), 1,
sym_escaped_character,
STATE(518), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[12069] = 2,
ACTIONS(312), 2,
sym__concat,
sym_escaped_character,
ACTIONS(314), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12082] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(1007), 1,
anon_sym_DQUOTE,
ACTIONS(947), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(387), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[12101] = 6,
ACTIONS(467), 1,
anon_sym_DOLLAR,
ACTIONS(471), 1,
anon_sym_DQUOTE,
ACTIONS(473), 1,
anon_sym_LBRACK,
ACTIONS(1009), 1,
sym_simple_word,
ACTIONS(1011), 1,
sym_escaped_character,
STATE(358), 3,
sym_variable_substitution,
sym_quoted_word,
sym_command_substitution,
[12122] = 2,
ACTIONS(1013), 1,
sym_escaped_character,
ACTIONS(879), 7,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[12135] = 2,
ACTIONS(264), 2,
sym__concat,
anon_sym_LF,
ACTIONS(266), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[12148] = 6,
ACTIONS(941), 1,
anon_sym_elseif,
ACTIONS(943), 1,
anon_sym_else,
ACTIONS(1015), 1,
anon_sym_LF,
STATE(585), 1,
sym_else,
ACTIONS(1017), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
STATE(432), 2,
sym_elseif,
aux_sym_conditional_repeat1,
[12169] = 2,
ACTIONS(260), 2,
sym__concat,
sym_escaped_character,
ACTIONS(262), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12182] = 5,
ACTIONS(1019), 1,
anon_sym_DOLLAR,
ACTIONS(1022), 1,
anon_sym_DQUOTE,
ACTIONS(1027), 1,
anon_sym_LBRACK,
ACTIONS(1024), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(387), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[12201] = 2,
ACTIONS(256), 2,
sym__concat,
anon_sym_LF,
ACTIONS(258), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[12214] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(1030), 1,
anon_sym_DQUOTE,
ACTIONS(947), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(387), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[12233] = 2,
ACTIONS(308), 2,
sym__concat,
sym_escaped_character,
ACTIONS(310), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12246] = 2,
ACTIONS(260), 2,
sym__concat,
anon_sym_LF,
ACTIONS(262), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[12259] = 4,
ACTIONS(242), 1,
anon_sym_else,
ACTIONS(913), 1,
anon_sym_LPAREN,
STATE(448), 1,
sym_array_index,
ACTIONS(240), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[12276] = 5,
ACTIONS(919), 1,
anon_sym_DOLLAR,
ACTIONS(925), 1,
anon_sym_LBRACK,
ACTIONS(1032), 1,
anon_sym_DQUOTE,
ACTIONS(947), 2,
sym_escaped_character,
sym__quoted_word_content,
STATE(387), 3,
sym_variable_substitution,
sym_command_substitution,
aux_sym_quoted_word_repeat1,
[12295] = 3,
ACTIONS(1034), 1,
anon_sym_LPAREN,
STATE(459), 1,
sym_array_index,
ACTIONS(242), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[12309] = 4,
ACTIONS(509), 1,
anon_sym_else,
ACTIONS(915), 1,
sym__concat,
STATE(398), 1,
aux_sym__concat_word_repeat1,
ACTIONS(747), 4,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[12325] = 4,
ACTIONS(905), 1,
sym_escaped_character,
ACTIONS(1036), 1,
sym__concat,
STATE(396), 1,
aux_sym__word_simple_repeat1,
ACTIONS(903), 4,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12341] = 2,
ACTIONS(1041), 1,
sym_escaped_character,
ACTIONS(1039), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12353] = 4,
ACTIONS(693), 1,
anon_sym_else,
ACTIONS(915), 1,
sym__concat,
STATE(401), 1,
aux_sym__concat_word_repeat1,
ACTIONS(862), 4,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[12369] = 4,
ACTIONS(693), 1,
anon_sym_else,
ACTIONS(915), 1,
sym__concat,
STATE(402), 1,
aux_sym__concat_word_repeat1,
ACTIONS(862), 4,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[12385] = 4,
ACTIONS(893), 1,
sym_escaped_character,
ACTIONS(1043), 1,
sym__concat,
STATE(420), 1,
aux_sym__word_simple_repeat1,
ACTIONS(891), 4,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12401] = 4,
ACTIONS(627), 1,
anon_sym_else,
ACTIONS(1045), 1,
sym__concat,
STATE(401), 1,
aux_sym__concat_word_repeat1,
ACTIONS(629), 4,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[12417] = 4,
ACTIONS(655), 1,
anon_sym_else,
ACTIONS(915), 1,
sym__concat,
STATE(401), 1,
aux_sym__concat_word_repeat1,
ACTIONS(875), 4,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[12433] = 5,
ACTIONS(1048), 1,
anon_sym_COLON_COLON,
STATE(403), 1,
aux_sym__id_immediate_repeat1,
STATE(599), 1,
sym__ns_delim,
ACTIONS(226), 2,
anon_sym_LF,
anon_sym_LPAREN,
ACTIONS(228), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[12451] = 2,
ACTIONS(1053), 1,
sym_escaped_character,
ACTIONS(1051), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12463] = 5,
ACTIONS(232), 1,
sym_simple_word,
ACTIONS(1055), 1,
anon_sym_COLON_COLON,
STATE(407), 1,
aux_sym__id_immediate_repeat1,
STATE(618), 1,
sym__ns_delim,
ACTIONS(230), 3,
sym__concat,
anon_sym_LPAREN,
anon_sym_LBRACE,
[12481] = 3,
ACTIONS(1057), 1,
anon_sym_LPAREN,
STATE(471), 1,
sym_array_index,
ACTIONS(236), 5,
sym__concat,
anon_sym_RPAREN,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[12495] = 5,
ACTIONS(217), 1,
sym_simple_word,
ACTIONS(1055), 1,
anon_sym_COLON_COLON,
STATE(415), 1,
aux_sym__id_immediate_repeat1,
STATE(618), 1,
sym__ns_delim,
ACTIONS(215), 3,
sym__concat,
anon_sym_LPAREN,
anon_sym_LBRACE,
[12513] = 5,
ACTIONS(217), 1,
sym_simple_word,
ACTIONS(1055), 1,
anon_sym_COLON_COLON,
STATE(411), 1,
aux_sym__id_immediate_repeat1,
STATE(618), 1,
sym__ns_delim,
ACTIONS(215), 3,
sym__concat,
anon_sym_LPAREN,
anon_sym_LBRACE,
[12531] = 2,
ACTIONS(1061), 1,
sym_escaped_character,
ACTIONS(1059), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12543] = 3,
ACTIONS(1057), 1,
anon_sym_LPAREN,
STATE(500), 1,
sym_array_index,
ACTIONS(240), 5,
sym__concat,
anon_sym_RPAREN,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[12557] = 5,
ACTIONS(221), 1,
sym_simple_word,
ACTIONS(1055), 1,
anon_sym_COLON_COLON,
STATE(415), 1,
aux_sym__id_immediate_repeat1,
STATE(618), 1,
sym__ns_delim,
ACTIONS(219), 3,
sym__concat,
anon_sym_LPAREN,
anon_sym_LBRACE,
[12575] = 2,
ACTIONS(248), 1,
sym_escaped_character,
ACTIONS(250), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12587] = 3,
ACTIONS(1034), 1,
anon_sym_LPAREN,
STATE(503), 1,
sym_array_index,
ACTIONS(238), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[12601] = 2,
ACTIONS(1013), 1,
anon_sym_LF,
ACTIONS(879), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[12613] = 5,
ACTIONS(228), 1,
sym_simple_word,
ACTIONS(1063), 1,
anon_sym_COLON_COLON,
STATE(415), 1,
aux_sym__id_immediate_repeat1,
STATE(618), 1,
sym__ns_delim,
ACTIONS(226), 3,
sym__concat,
anon_sym_LPAREN,
anon_sym_LBRACE,
[12631] = 2,
ACTIONS(1068), 1,
sym_escaped_character,
ACTIONS(1066), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12643] = 2,
ACTIONS(226), 2,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
ACTIONS(228), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[12655] = 2,
ACTIONS(931), 1,
anon_sym_LF,
ACTIONS(860), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[12667] = 2,
ACTIONS(917), 1,
anon_sym_LF,
ACTIONS(877), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[12679] = 4,
ACTIONS(899), 1,
sym_escaped_character,
ACTIONS(1043), 1,
sym__concat,
STATE(396), 1,
aux_sym__word_simple_repeat1,
ACTIONS(897), 4,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12695] = 5,
ACTIONS(773), 1,
anon_sym_DQUOTE,
ACTIONS(1070), 1,
sym_simple_word,
ACTIONS(1072), 1,
anon_sym_LBRACE,
ACTIONS(1074), 1,
anon_sym_RBRACE,
STATE(671), 3,
sym_braced_word,
sym__argument_word,
sym_quoted_word,
[12713] = 2,
ACTIONS(248), 1,
sym_escaped_character,
ACTIONS(250), 6,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
anon_sym_RBRACK,
sym_simple_word,
[12725] = 2,
ACTIONS(256), 1,
sym_escaped_character,
ACTIONS(258), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12737] = 2,
ACTIONS(264), 1,
sym_escaped_character,
ACTIONS(266), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12749] = 2,
ACTIONS(260), 1,
sym_escaped_character,
ACTIONS(262), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12761] = 2,
ACTIONS(268), 1,
sym_escaped_character,
ACTIONS(270), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12773] = 2,
ACTIONS(244), 1,
sym_escaped_character,
ACTIONS(246), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12785] = 2,
ACTIONS(1078), 1,
sym_escaped_character,
ACTIONS(1076), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12797] = 5,
ACTIONS(1080), 1,
anon_sym_COLON_COLON,
STATE(430), 1,
aux_sym__id_immediate_repeat1,
STATE(599), 1,
sym__ns_delim,
ACTIONS(230), 2,
anon_sym_LF,
anon_sym_LPAREN,
ACTIONS(232), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[12815] = 5,
ACTIONS(1080), 1,
anon_sym_COLON_COLON,
STATE(403), 1,
aux_sym__id_immediate_repeat1,
STATE(599), 1,
sym__ns_delim,
ACTIONS(215), 2,
anon_sym_LF,
anon_sym_LPAREN,
ACTIONS(217), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[12833] = 5,
ACTIONS(1080), 1,
anon_sym_COLON_COLON,
STATE(435), 1,
aux_sym__id_immediate_repeat1,
STATE(599), 1,
sym__ns_delim,
ACTIONS(215), 2,
anon_sym_LF,
anon_sym_LPAREN,
ACTIONS(217), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[12851] = 4,
ACTIONS(1082), 1,
anon_sym_LF,
ACTIONS(1086), 1,
anon_sym_elseif,
STATE(432), 2,
sym_elseif,
aux_sym_conditional_repeat1,
ACTIONS(1084), 3,
anon_sym_SEMI,
anon_sym_RBRACE,
anon_sym_else,
[12867] = 2,
ACTIONS(252), 1,
sym_escaped_character,
ACTIONS(254), 6,
sym_unpack,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12879] = 2,
ACTIONS(957), 1,
anon_sym_LF,
ACTIONS(848), 6,
anon_sym_SEMI,
anon_sym_on,
anon_sym_finally,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[12891] = 5,
ACTIONS(1080), 1,
anon_sym_COLON_COLON,
STATE(403), 1,
aux_sym__id_immediate_repeat1,
STATE(599), 1,
sym__ns_delim,
ACTIONS(219), 2,
anon_sym_LF,
anon_sym_LPAREN,
ACTIONS(221), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[12909] = 2,
ACTIONS(1053), 1,
sym_escaped_character,
ACTIONS(1051), 5,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12920] = 5,
ACTIONS(1057), 1,
anon_sym_LPAREN,
ACTIONS(1089), 1,
sym__concat,
STATE(522), 1,
aux_sym__concat_word_repeat1,
STATE(523), 1,
sym_array_index,
ACTIONS(747), 2,
anon_sym_LBRACE,
sym_simple_word,
[12937] = 5,
ACTIONS(937), 1,
anon_sym_RBRACK,
ACTIONS(1091), 1,
anon_sym_elseif,
ACTIONS(1093), 1,
anon_sym_else,
STATE(702), 1,
sym_else,
STATE(456), 2,
sym_elseif,
aux_sym_conditional_repeat1,
[12954] = 2,
ACTIONS(1078), 1,
sym_escaped_character,
ACTIONS(1076), 5,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[12965] = 2,
ACTIONS(258), 1,
anon_sym_else,
ACTIONS(256), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[12976] = 2,
ACTIONS(266), 1,
anon_sym_else,
ACTIONS(264), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[12987] = 3,
ACTIONS(1057), 1,
anon_sym_LPAREN,
STATE(520), 1,
sym_array_index,
ACTIONS(629), 4,
sym__concat,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13000] = 2,
ACTIONS(270), 1,
anon_sym_else,
ACTIONS(268), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[13011] = 5,
ACTIONS(1095), 1,
anon_sym_LF,
ACTIONS(1099), 1,
anon_sym_on,
ACTIONS(1101), 1,
anon_sym_finally,
STATE(556), 1,
sym_finally,
ACTIONS(1097), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[13028] = 5,
ACTIONS(1101), 1,
anon_sym_finally,
ACTIONS(1103), 1,
anon_sym_LF,
ACTIONS(1107), 1,
anon_sym_on,
STATE(557), 1,
sym_finally,
ACTIONS(1105), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[13045] = 5,
ACTIONS(937), 1,
anon_sym_RBRACK,
ACTIONS(1091), 1,
anon_sym_elseif,
ACTIONS(1093), 1,
anon_sym_else,
STATE(702), 1,
sym_else,
STATE(450), 2,
sym_elseif,
aux_sym_conditional_repeat1,
[13062] = 2,
ACTIONS(250), 1,
anon_sym_else,
ACTIONS(248), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[13073] = 2,
ACTIONS(246), 1,
anon_sym_else,
ACTIONS(244), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[13084] = 2,
ACTIONS(844), 1,
anon_sym_else,
ACTIONS(846), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[13095] = 5,
ACTIONS(1015), 1,
anon_sym_RBRACK,
ACTIONS(1091), 1,
anon_sym_elseif,
ACTIONS(1093), 1,
anon_sym_else,
STATE(677), 1,
sym_else,
STATE(456), 2,
sym_elseif,
aux_sym_conditional_repeat1,
[13112] = 2,
ACTIONS(1041), 1,
sym_escaped_character,
ACTIONS(1039), 5,
anon_sym_DOLLAR,
anon_sym_LBRACE,
anon_sym_DQUOTE,
anon_sym_LBRACK,
sym_simple_word,
[13123] = 2,
ACTIONS(262), 1,
anon_sym_else,
ACTIONS(260), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[13134] = 2,
ACTIONS(627), 1,
anon_sym_else,
ACTIONS(629), 5,
sym__concat,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[13145] = 5,
ACTIONS(997), 1,
anon_sym_RBRACK,
ACTIONS(1091), 1,
anon_sym_elseif,
ACTIONS(1093), 1,
anon_sym_else,
STATE(637), 1,
sym_else,
STATE(438), 2,
sym_elseif,
aux_sym_conditional_repeat1,
[13162] = 4,
ACTIONS(1101), 1,
anon_sym_finally,
ACTIONS(1109), 1,
anon_sym_LF,
STATE(539), 1,
sym_finally,
ACTIONS(1111), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[13176] = 4,
ACTIONS(1082), 1,
anon_sym_RBRACK,
ACTIONS(1084), 1,
anon_sym_else,
ACTIONS(1113), 1,
anon_sym_elseif,
STATE(456), 2,
sym_elseif,
aux_sym_conditional_repeat1,
[13190] = 2,
ACTIONS(228), 2,
anon_sym_COLON_COLON,
sym_simple_word,
ACTIONS(226), 3,
sym__concat,
anon_sym_LPAREN,
anon_sym_LBRACE,
[13200] = 1,
ACTIONS(256), 5,
sym__concat,
anon_sym_RPAREN,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13208] = 1,
ACTIONS(246), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[13216] = 4,
ACTIONS(1116), 1,
sym_simple_word,
ACTIONS(1119), 1,
anon_sym_LBRACE,
ACTIONS(1122), 1,
anon_sym_RBRACE,
STATE(460), 2,
sym_argument,
aux_sym_arguments_repeat1,
[13230] = 5,
ACTIONS(1124), 1,
anon_sym_COLON_COLON,
ACTIONS(1126), 1,
sym__ident_imm,
ACTIONS(1128), 1,
anon_sym_LBRACE,
STATE(210), 1,
sym__id_immediate,
STATE(629), 1,
sym__ns_delim,
[13246] = 4,
ACTIONS(1130), 1,
sym_simple_word,
ACTIONS(1132), 1,
anon_sym_LBRACE,
ACTIONS(1134), 1,
anon_sym_RBRACE,
STATE(466), 2,
sym_argument,
aux_sym_arguments_repeat1,
[13260] = 5,
ACTIONS(1136), 1,
anon_sym_LF,
ACTIONS(1138), 1,
anon_sym_SEMI,
ACTIONS(1140), 1,
anon_sym_RBRACE,
STATE(4), 1,
aux_sym_braced_word_repeat1,
STATE(467), 1,
aux_sym_braced_word_repeat2,
[13276] = 2,
ACTIONS(228), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
ACTIONS(226), 3,
anon_sym_LF,
anon_sym_COLON_COLON,
anon_sym_LPAREN,
[13286] = 5,
ACTIONS(1142), 1,
anon_sym_LF,
ACTIONS(1144), 1,
anon_sym_SEMI,
ACTIONS(1146), 1,
anon_sym_RBRACE,
STATE(5), 1,
aux_sym_braced_word_repeat1,
STATE(505), 1,
aux_sym_braced_word_repeat2,
[13302] = 4,
ACTIONS(1130), 1,
sym_simple_word,
ACTIONS(1132), 1,
anon_sym_LBRACE,
ACTIONS(1148), 1,
anon_sym_RBRACE,
STATE(460), 2,
sym_argument,
aux_sym_arguments_repeat1,
[13316] = 5,
ACTIONS(115), 1,
anon_sym_RBRACE,
ACTIONS(1150), 1,
anon_sym_LF,
ACTIONS(1152), 1,
anon_sym_SEMI,
STATE(7), 1,
aux_sym_braced_word_repeat1,
STATE(469), 1,
aux_sym_braced_word_repeat2,
[13332] = 2,
ACTIONS(848), 1,
anon_sym_else,
ACTIONS(957), 4,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[13342] = 5,
ACTIONS(1154), 1,
anon_sym_LF,
ACTIONS(1157), 1,
anon_sym_SEMI,
ACTIONS(1160), 1,
anon_sym_RBRACE,
STATE(14), 1,
aux_sym_braced_word_repeat1,
STATE(469), 1,
aux_sym_braced_word_repeat2,
[13358] = 4,
ACTIONS(1101), 1,
anon_sym_finally,
ACTIONS(1162), 1,
anon_sym_LF,
STATE(562), 1,
sym_finally,
ACTIONS(1164), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[13372] = 1,
ACTIONS(264), 5,
sym__concat,
anon_sym_RPAREN,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13380] = 1,
ACTIONS(260), 5,
sym__concat,
anon_sym_RPAREN,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13388] = 5,
ACTIONS(1166), 1,
anon_sym_COLON_COLON,
ACTIONS(1168), 1,
sym__ident_imm,
ACTIONS(1170), 1,
anon_sym_LBRACE,
STATE(306), 1,
sym__id_immediate,
STATE(601), 1,
sym__ns_delim,
[13404] = 1,
ACTIONS(268), 5,
sym__concat,
anon_sym_RPAREN,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13412] = 5,
ACTIONS(1172), 1,
anon_sym_LF,
ACTIONS(1174), 1,
anon_sym_SEMI,
ACTIONS(1176), 1,
anon_sym_RBRACE,
STATE(9), 1,
aux_sym_braced_word_repeat1,
STATE(478), 1,
aux_sym_braced_word_repeat2,
[13428] = 1,
ACTIONS(250), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[13436] = 4,
ACTIONS(1130), 1,
sym_simple_word,
ACTIONS(1132), 1,
anon_sym_LBRACE,
ACTIONS(1178), 1,
anon_sym_RBRACE,
STATE(460), 2,
sym_argument,
aux_sym_arguments_repeat1,
[13450] = 5,
ACTIONS(125), 1,
anon_sym_RBRACE,
ACTIONS(1180), 1,
anon_sym_LF,
ACTIONS(1182), 1,
anon_sym_SEMI,
STATE(10), 1,
aux_sym_braced_word_repeat1,
STATE(469), 1,
aux_sym_braced_word_repeat2,
[13466] = 5,
ACTIONS(1184), 1,
anon_sym_COLON_COLON,
ACTIONS(1186), 1,
sym__ident_imm,
ACTIONS(1188), 1,
anon_sym_LBRACE,
STATE(496), 1,
sym__id_immediate,
STATE(664), 1,
sym__ns_delim,
[13482] = 5,
ACTIONS(1190), 1,
anon_sym_LF,
ACTIONS(1192), 1,
anon_sym_SEMI,
ACTIONS(1194), 1,
anon_sym_RBRACE,
STATE(12), 1,
aux_sym_braced_word_repeat1,
STATE(483), 1,
aux_sym_braced_word_repeat2,
[13498] = 4,
ACTIONS(899), 1,
anon_sym_LF,
ACTIONS(1196), 1,
sym__concat,
STATE(485), 1,
aux_sym__word_simple_repeat1,
ACTIONS(897), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[13512] = 2,
ACTIONS(1198), 1,
anon_sym_LF,
ACTIONS(1200), 4,
anon_sym_SEMI,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[13522] = 5,
ACTIONS(131), 1,
anon_sym_RBRACE,
ACTIONS(1202), 1,
anon_sym_LF,
ACTIONS(1204), 1,
anon_sym_SEMI,
STATE(13), 1,
aux_sym_braced_word_repeat1,
STATE(469), 1,
aux_sym_braced_word_repeat2,
[13538] = 5,
ACTIONS(1206), 1,
anon_sym_COLON_COLON,
ACTIONS(1208), 1,
sym__ident_imm,
ACTIONS(1210), 1,
anon_sym_LBRACE,
STATE(301), 1,
sym__id_immediate,
STATE(704), 1,
sym__ns_delim,
[13554] = 4,
ACTIONS(905), 1,
anon_sym_LF,
ACTIONS(1212), 1,
sym__concat,
STATE(485), 1,
aux_sym__word_simple_repeat1,
ACTIONS(903), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[13568] = 2,
ACTIONS(879), 1,
anon_sym_else,
ACTIONS(1013), 4,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[13578] = 5,
ACTIONS(1215), 1,
anon_sym_LF,
ACTIONS(1217), 1,
anon_sym_SEMI,
ACTIONS(1219), 1,
anon_sym_RBRACE,
STATE(8), 1,
aux_sym_braced_word_repeat1,
STATE(489), 1,
aux_sym_braced_word_repeat2,
[13594] = 2,
ACTIONS(1221), 1,
anon_sym_LF,
ACTIONS(1223), 4,
anon_sym_SEMI,
anon_sym_RBRACE,
anon_sym_elseif,
anon_sym_else,
[13604] = 5,
ACTIONS(123), 1,
anon_sym_RBRACE,
ACTIONS(1225), 1,
anon_sym_LF,
ACTIONS(1227), 1,
anon_sym_SEMI,
STATE(11), 1,
aux_sym_braced_word_repeat1,
STATE(469), 1,
aux_sym_braced_word_repeat2,
[13620] = 5,
ACTIONS(1229), 1,
anon_sym_COLON_COLON,
ACTIONS(1231), 1,
sym__ident_imm,
ACTIONS(1233), 1,
anon_sym_LBRACE,
STATE(406), 1,
sym__id_immediate,
STATE(607), 1,
sym__ns_delim,
[13636] = 5,
ACTIONS(747), 1,
anon_sym_RBRACK,
ACTIONS(1057), 1,
anon_sym_LPAREN,
ACTIONS(1235), 1,
sym__concat,
STATE(591), 1,
aux_sym__concat_word_repeat1,
STATE(592), 1,
sym_array_index,
[13652] = 5,
ACTIONS(1237), 1,
anon_sym_COLON_COLON,
ACTIONS(1239), 1,
sym__ident_imm,
ACTIONS(1241), 1,
anon_sym_LBRACE,
STATE(413), 1,
sym__id_immediate,
STATE(615), 1,
sym__ns_delim,
[13668] = 4,
ACTIONS(1101), 1,
anon_sym_finally,
ACTIONS(1243), 1,
anon_sym_LF,
STATE(564), 1,
sym_finally,
ACTIONS(1245), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[13682] = 5,
ACTIONS(1247), 1,
anon_sym_COLON_COLON,
ACTIONS(1249), 1,
sym__ident_imm,
ACTIONS(1251), 1,
anon_sym_LBRACE,
STATE(284), 1,
sym__id_immediate,
STATE(623), 1,
sym__ns_delim,
[13698] = 2,
ACTIONS(877), 1,
anon_sym_else,
ACTIONS(917), 4,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[13708] = 4,
ACTIONS(236), 1,
anon_sym_LF,
ACTIONS(1253), 1,
anon_sym_LPAREN,
STATE(573), 1,
sym_array_index,
ACTIONS(238), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[13722] = 5,
ACTIONS(1255), 1,
anon_sym_COLON_COLON,
ACTIONS(1257), 1,
sym__ident_imm,
ACTIONS(1259), 1,
anon_sym_LBRACE,
STATE(35), 1,
sym__id_immediate,
STATE(631), 1,
sym__ns_delim,
[13738] = 5,
ACTIONS(1261), 1,
anon_sym_COLON_COLON,
ACTIONS(1263), 1,
sym__ident_imm,
ACTIONS(1265), 1,
anon_sym_LBRACE,
STATE(360), 1,
sym__id_immediate,
STATE(638), 1,
sym__ns_delim,
[13754] = 5,
ACTIONS(1233), 1,
anon_sym_LBRACE,
ACTIONS(1261), 1,
anon_sym_COLON_COLON,
ACTIONS(1263), 1,
sym__ident_imm,
STATE(406), 1,
sym__id_immediate,
STATE(638), 1,
sym__ns_delim,
[13770] = 1,
ACTIONS(244), 5,
sym__concat,
anon_sym_RPAREN,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13778] = 2,
ACTIONS(860), 1,
anon_sym_else,
ACTIONS(931), 4,
anon_sym_on,
anon_sym_finally,
anon_sym_elseif,
anon_sym_RBRACK,
[13788] = 4,
ACTIONS(1130), 1,
sym_simple_word,
ACTIONS(1132), 1,
anon_sym_LBRACE,
ACTIONS(1267), 1,
anon_sym_RBRACE,
STATE(477), 2,
sym_argument,
aux_sym_arguments_repeat1,
[13802] = 1,
ACTIONS(266), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[13810] = 4,
ACTIONS(893), 1,
anon_sym_LF,
ACTIONS(1196), 1,
sym__concat,
STATE(481), 1,
aux_sym__word_simple_repeat1,
ACTIONS(891), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[13824] = 5,
ACTIONS(117), 1,
anon_sym_RBRACE,
ACTIONS(1269), 1,
anon_sym_LF,
ACTIONS(1271), 1,
anon_sym_SEMI,
STATE(6), 1,
aux_sym_braced_word_repeat1,
STATE(469), 1,
aux_sym_braced_word_repeat2,
[13840] = 4,
ACTIONS(240), 1,
anon_sym_LF,
ACTIONS(1253), 1,
anon_sym_LPAREN,
STATE(558), 1,
sym_array_index,
ACTIONS(242), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[13854] = 5,
ACTIONS(1273), 1,
anon_sym_COLON_COLON,
ACTIONS(1275), 1,
sym__ident_imm,
ACTIONS(1277), 1,
anon_sym_LBRACE,
STATE(141), 1,
sym__id_immediate,
STATE(680), 1,
sym__ns_delim,
[13870] = 1,
ACTIONS(270), 5,
anon_sym_DOLLAR,
anon_sym_DQUOTE,
sym_escaped_character,
sym__quoted_word_content,
anon_sym_LBRACK,
[13878] = 1,
ACTIONS(248), 5,
sym__concat,
anon_sym_RPAREN,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13886] = 3,
ACTIONS(1279), 1,
sym__concat,
STATE(513), 1,
aux_sym__word_simple_repeat1,
ACTIONS(899), 2,
anon_sym_RPAREN,
anon_sym_RBRACK,
[13897] = 1,
ACTIONS(931), 4,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13904] = 3,
ACTIONS(1279), 1,
sym__concat,
STATE(510), 1,
aux_sym__word_simple_repeat1,
ACTIONS(893), 2,
anon_sym_RPAREN,
anon_sym_RBRACK,
[13915] = 3,
ACTIONS(1281), 1,
sym__concat,
STATE(513), 1,
aux_sym__word_simple_repeat1,
ACTIONS(905), 2,
anon_sym_RPAREN,
anon_sym_RBRACK,
[13926] = 3,
ACTIONS(1089), 1,
sym__concat,
STATE(522), 1,
aux_sym__concat_word_repeat1,
ACTIONS(747), 2,
anon_sym_LBRACE,
sym_simple_word,
[13937] = 1,
ACTIONS(957), 4,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13944] = 4,
ACTIONS(1284), 1,
sym__ident,
ACTIONS(1286), 1,
anon_sym_COLON_COLON2,
ACTIONS(1288), 1,
anon_sym_DOLLAR,
STATE(98), 1,
sym_id,
[13957] = 1,
ACTIONS(1013), 4,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13964] = 1,
ACTIONS(629), 4,
sym__concat,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13971] = 4,
ACTIONS(1103), 1,
anon_sym_RBRACK,
ACTIONS(1290), 1,
anon_sym_on,
ACTIONS(1292), 1,
anon_sym_finally,
STATE(648), 1,
sym_finally,
[13984] = 1,
ACTIONS(846), 4,
sym__concat,
anon_sym_LBRACE,
anon_sym_RBRACK,
sym_simple_word,
[13991] = 4,
ACTIONS(1095), 1,
anon_sym_RBRACK,
ACTIONS(1292), 1,
anon_sym_finally,
ACTIONS(1294), 1,
anon_sym_on,
STATE(652), 1,
sym_finally,
[14004] = 3,
ACTIONS(1089), 1,
sym__concat,
STATE(524), 1,
aux_sym__concat_word_repeat1,
ACTIONS(862), 2,
anon_sym_LBRACE,
sym_simple_word,
[14015] = 3,
ACTIONS(1089), 1,
sym__concat,
STATE(528), 1,
aux_sym__concat_word_repeat1,
ACTIONS(862), 2,
anon_sym_LBRACE,
sym_simple_word,
[14026] = 3,
ACTIONS(1296), 1,
sym__concat,
STATE(524), 1,
aux_sym__concat_word_repeat1,
ACTIONS(629), 2,
anon_sym_LBRACE,
sym_simple_word,
[14037] = 2,
ACTIONS(308), 2,
sym__concat,
anon_sym_LF,
ACTIONS(310), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14046] = 2,
ACTIONS(903), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
ACTIONS(905), 2,
sym__concat,
anon_sym_LF,
[14055] = 4,
ACTIONS(1299), 1,
sym__ident,
ACTIONS(1301), 1,
anon_sym_COLON_COLON2,
ACTIONS(1303), 1,
anon_sym_DOLLAR,
STATE(112), 1,
sym_id,
[14068] = 3,
ACTIONS(1089), 1,
sym__concat,
STATE(524), 1,
aux_sym__concat_word_repeat1,
ACTIONS(875), 2,
anon_sym_LBRACE,
sym_simple_word,
[14079] = 2,
ACTIONS(312), 2,
sym__concat,
anon_sym_LF,
ACTIONS(314), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14088] = 1,
ACTIONS(917), 4,
anon_sym_LBRACE,
anon_sym_RBRACE,
anon_sym_RBRACK,
sym_simple_word,
[14095] = 2,
ACTIONS(1305), 1,
anon_sym_LF,
ACTIONS(762), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14103] = 2,
ACTIONS(252), 1,
anon_sym_LF,
ACTIONS(254), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14111] = 2,
ACTIONS(1307), 1,
anon_sym_LF,
ACTIONS(1309), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14119] = 3,
ACTIONS(1311), 1,
sym_simple_word,
ACTIONS(1313), 1,
anon_sym_LBRACE,
STATE(247), 1,
sym_arguments,
[14129] = 2,
ACTIONS(1315), 1,
anon_sym_LF,
ACTIONS(1317), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14137] = 2,
ACTIONS(1319), 1,
anon_sym_LF,
ACTIONS(1321), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14145] = 2,
ACTIONS(1015), 1,
anon_sym_LF,
ACTIONS(1017), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14153] = 2,
ACTIONS(1323), 1,
anon_sym_LF,
ACTIONS(1325), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14161] = 2,
ACTIONS(1162), 1,
anon_sym_LF,
ACTIONS(1164), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14169] = 2,
ACTIONS(1327), 1,
anon_sym_LF,
ACTIONS(1329), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14177] = 2,
ACTIONS(1331), 1,
anon_sym_LF,
ACTIONS(1333), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14185] = 2,
ACTIONS(248), 1,
anon_sym_LF,
ACTIONS(250), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14193] = 1,
ACTIONS(1335), 3,
anon_sym_LBRACE,
anon_sym_RBRACE,
sym_simple_word,
[14199] = 2,
ACTIONS(1337), 1,
anon_sym_LF,
ACTIONS(1339), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14207] = 2,
ACTIONS(937), 1,
anon_sym_LF,
ACTIONS(939), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14215] = 1,
ACTIONS(905), 3,
sym__concat,
anon_sym_RPAREN,
anon_sym_RBRACK,
[14221] = 2,
ACTIONS(1341), 1,
anon_sym_LF,
ACTIONS(1343), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14229] = 3,
ACTIONS(1109), 1,
anon_sym_RBRACK,
ACTIONS(1292), 1,
anon_sym_finally,
STATE(707), 1,
sym_finally,
[14239] = 2,
ACTIONS(1345), 1,
anon_sym_LF,
ACTIONS(1347), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14247] = 2,
ACTIONS(1223), 1,
anon_sym_else,
ACTIONS(1221), 2,
anon_sym_elseif,
anon_sym_RBRACK,
[14255] = 2,
ACTIONS(1061), 1,
anon_sym_LF,
ACTIONS(1059), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14263] = 2,
ACTIONS(1068), 1,
anon_sym_LF,
ACTIONS(1066), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14271] = 3,
ACTIONS(1162), 1,
anon_sym_RBRACK,
ACTIONS(1292), 1,
anon_sym_finally,
STATE(624), 1,
sym_finally,
[14281] = 2,
ACTIONS(1349), 1,
anon_sym_LF,
ACTIONS(1351), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14289] = 3,
ACTIONS(1353), 1,
sym_simple_word,
ACTIONS(1355), 1,
anon_sym_LBRACE,
STATE(184), 1,
sym_arguments,
[14299] = 2,
ACTIONS(1103), 1,
anon_sym_LF,
ACTIONS(1105), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14307] = 2,
ACTIONS(1357), 1,
anon_sym_LF,
ACTIONS(1359), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14315] = 2,
ACTIONS(244), 1,
anon_sym_LF,
ACTIONS(246), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14323] = 3,
ACTIONS(1353), 1,
sym_simple_word,
ACTIONS(1355), 1,
anon_sym_LBRACE,
STATE(191), 1,
sym_arguments,
[14333] = 2,
ACTIONS(1200), 1,
anon_sym_else,
ACTIONS(1198), 2,
anon_sym_elseif,
anon_sym_RBRACK,
[14341] = 3,
ACTIONS(1243), 1,
anon_sym_RBRACK,
ACTIONS(1292), 1,
anon_sym_finally,
STATE(650), 1,
sym_finally,
[14351] = 2,
ACTIONS(1243), 1,
anon_sym_LF,
ACTIONS(1245), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14359] = 2,
ACTIONS(1361), 1,
anon_sym_LF,
ACTIONS(1363), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14367] = 2,
ACTIONS(1365), 1,
anon_sym_LF,
ACTIONS(1367), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14375] = 2,
ACTIONS(256), 1,
anon_sym_LF,
ACTIONS(258), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14383] = 2,
ACTIONS(1369), 1,
anon_sym_LF,
ACTIONS(1160), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14391] = 3,
ACTIONS(1353), 1,
sym_simple_word,
ACTIONS(1355), 1,
anon_sym_LBRACE,
STATE(156), 1,
sym_arguments,
[14401] = 1,
ACTIONS(308), 3,
sym__concat,
anon_sym_RPAREN,
anon_sym_RBRACK,
[14407] = 2,
ACTIONS(1371), 1,
anon_sym_LF,
ACTIONS(1373), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14415] = 3,
ACTIONS(1353), 1,
sym_simple_word,
ACTIONS(1355), 1,
anon_sym_LBRACE,
STATE(159), 1,
sym_arguments,
[14425] = 2,
ACTIONS(1375), 1,
anon_sym_LF,
ACTIONS(1377), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14433] = 3,
ACTIONS(1353), 1,
sym_simple_word,
ACTIONS(1355), 1,
anon_sym_LBRACE,
STATE(161), 1,
sym_arguments,
[14443] = 2,
ACTIONS(264), 1,
anon_sym_LF,
ACTIONS(266), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14451] = 3,
ACTIONS(1353), 1,
sym_simple_word,
ACTIONS(1355), 1,
anon_sym_LBRACE,
STATE(163), 1,
sym_arguments,
[14461] = 2,
ACTIONS(260), 1,
anon_sym_LF,
ACTIONS(262), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14469] = 2,
ACTIONS(1379), 1,
anon_sym_LF,
ACTIONS(1381), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14477] = 1,
ACTIONS(1383), 3,
anon_sym_LBRACE,
anon_sym_RBRACE,
sym_simple_word,
[14483] = 1,
ACTIONS(1385), 3,
anon_sym_LBRACE,
anon_sym_RBRACE,
sym_simple_word,
[14489] = 2,
ACTIONS(1387), 1,
anon_sym_LF,
ACTIONS(1389), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14497] = 3,
ACTIONS(1353), 1,
sym_simple_word,
ACTIONS(1355), 1,
anon_sym_LBRACE,
STATE(196), 1,
sym_arguments,
[14507] = 2,
ACTIONS(268), 1,
anon_sym_LF,
ACTIONS(270), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14515] = 3,
ACTIONS(1353), 1,
sym_simple_word,
ACTIONS(1355), 1,
anon_sym_LBRACE,
STATE(164), 1,
sym_arguments,
[14525] = 2,
ACTIONS(1391), 1,
anon_sym_LF,
ACTIONS(1393), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14533] = 1,
ACTIONS(312), 3,
sym__concat,
anon_sym_RPAREN,
anon_sym_RBRACK,
[14539] = 2,
ACTIONS(1395), 1,
anon_sym_LF,
ACTIONS(1397), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14547] = 2,
ACTIONS(1399), 1,
anon_sym_LF,
ACTIONS(1401), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14555] = 2,
ACTIONS(1403), 1,
anon_sym_LF,
ACTIONS(1405), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14563] = 3,
ACTIONS(1311), 1,
sym_simple_word,
ACTIONS(1313), 1,
anon_sym_LBRACE,
STATE(266), 1,
sym_arguments,
[14573] = 2,
ACTIONS(1407), 1,
anon_sym_LF,
ACTIONS(550), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14581] = 3,
ACTIONS(747), 1,
anon_sym_RBRACK,
ACTIONS(1235), 1,
sym__concat,
STATE(591), 1,
aux_sym__concat_word_repeat1,
[14591] = 3,
ACTIONS(862), 1,
anon_sym_RBRACK,
ACTIONS(1235), 1,
sym__concat,
STATE(593), 1,
aux_sym__concat_word_repeat1,
[14601] = 3,
ACTIONS(862), 1,
anon_sym_RBRACK,
ACTIONS(1235), 1,
sym__concat,
STATE(594), 1,
aux_sym__concat_word_repeat1,
[14611] = 3,
ACTIONS(629), 1,
anon_sym_RBRACK,
ACTIONS(1409), 1,
sym__concat,
STATE(593), 1,
aux_sym__concat_word_repeat1,
[14621] = 3,
ACTIONS(875), 1,
anon_sym_RBRACK,
ACTIONS(1235), 1,
sym__concat,
STATE(593), 1,
aux_sym__concat_word_repeat1,
[14631] = 2,
ACTIONS(1412), 1,
anon_sym_LF,
ACTIONS(1414), 2,
anon_sym_SEMI,
anon_sym_RBRACE,
[14639] = 2,
ACTIONS(1416), 1,
anon_sym_LF,
ACTIONS(1418), 1,
anon_sym_SEMI,
[14646] = 1,
ACTIONS(1420), 1,
anon_sym_RBRACE,
[14650] = 1,
ACTIONS(1422), 1,
anon_sym_error,
[14654] = 1,
ACTIONS(1424), 1,
sym__ident_imm,
[14658] = 1,
ACTIONS(1426), 1,
anon_sym_RBRACE,
[14662] = 1,
ACTIONS(1428), 1,
sym__ident_imm,
[14666] = 1,
ACTIONS(1337), 1,
anon_sym_RBRACK,
[14670] = 1,
ACTIONS(1430), 1,
anon_sym_RPAREN,
[14674] = 1,
ACTIONS(1349), 1,
anon_sym_RBRACK,
[14678] = 1,
ACTIONS(1399), 1,
anon_sym_RBRACK,
[14682] = 1,
ACTIONS(1331), 1,
anon_sym_RBRACK,
[14686] = 1,
ACTIONS(1432), 1,
sym__ident_imm,
[14690] = 1,
ACTIONS(1434), 1,
anon_sym_RBRACK,
[14694] = 1,
ACTIONS(1436), 1,
anon_sym_RBRACK,
[14698] = 1,
ACTIONS(1438), 1,
sym__ident_imm,
[14702] = 1,
ACTIONS(1440), 1,
anon_sym_RBRACE,
[14706] = 1,
ACTIONS(1442), 1,
anon_sym_RPAREN,
[14710] = 1,
ACTIONS(1444), 1,
anon_sym_RBRACE,
[14714] = 1,
ACTIONS(1403), 1,
anon_sym_RBRACK,
[14718] = 1,
ACTIONS(1446), 1,
sym__ident_imm,
[14722] = 1,
ACTIONS(1448), 1,
anon_sym_LPAREN2,
[14726] = 1,
ACTIONS(1450), 1,
anon_sym_RBRACK,
[14730] = 1,
ACTIONS(1452), 1,
sym__ident_imm,
[14734] = 1,
ACTIONS(1454), 1,
anon_sym_RBRACE,
[14738] = 1,
ACTIONS(1456), 1,
anon_sym_RPAREN,
[14742] = 1,
ACTIONS(1458), 1,
sym__ident_imm,
[14746] = 1,
ACTIONS(1375), 1,
anon_sym_RBRACK,
[14750] = 1,
ACTIONS(1460), 1,
sym__ident_imm,
[14754] = 1,
ACTIONS(1243), 1,
anon_sym_RBRACK,
[14758] = 1,
ACTIONS(1462), 1,
anon_sym_RBRACK,
[14762] = 1,
ACTIONS(1464), 1,
sym__ident_imm,
[14766] = 1,
ACTIONS(1305), 1,
anon_sym_RBRACK,
[14770] = 1,
ACTIONS(1466), 1,
anon_sym_RPAREN,
[14774] = 1,
ACTIONS(1468), 1,
sym__ident_imm,
[14778] = 1,
ACTIONS(1470), 1,
anon_sym_RBRACE,
[14782] = 1,
ACTIONS(1472), 1,
sym__ident_imm,
[14786] = 1,
ACTIONS(1387), 1,
anon_sym_RBRACK,
[14790] = 1,
ACTIONS(1474), 1,
anon_sym_RBRACK,
[14794] = 1,
ACTIONS(1476), 1,
sym__ident_imm,
[14798] = 1,
ACTIONS(1478), 1,
anon_sym_RBRACE,
[14802] = 1,
ACTIONS(1480), 1,
anon_sym_RPAREN,
[14806] = 1,
ACTIONS(937), 1,
anon_sym_RBRACK,
[14810] = 1,
ACTIONS(1482), 1,
sym__ident_imm,
[14814] = 1,
ACTIONS(1484), 1,
anon_sym_RBRACK,
[14818] = 1,
ACTIONS(1486), 1,
sym__ident_imm,
[14822] = 1,
ACTIONS(1488), 1,
anon_sym_RBRACE,
[14826] = 1,
ACTIONS(1490), 1,
anon_sym_RPAREN,
[14830] = 1,
ACTIONS(1492), 1,
sym__ident_imm,
[14834] = 1,
ACTIONS(1494), 1,
sym__ident_imm,
[14838] = 1,
ACTIONS(1496), 1,
anon_sym_RPAREN,
[14842] = 1,
ACTIONS(1498), 1,
sym__ident_imm,
[14846] = 1,
ACTIONS(1500), 1,
anon_sym_RPAREN,
[14850] = 1,
ACTIONS(1357), 1,
anon_sym_RBRACK,
[14854] = 1,
ACTIONS(1502), 1,
sym__ident_imm,
[14858] = 1,
ACTIONS(1365), 1,
anon_sym_RBRACK,
[14862] = 1,
ACTIONS(1504), 1,
anon_sym_RBRACE,
[14866] = 1,
ACTIONS(1103), 1,
anon_sym_RBRACK,
[14870] = 1,
ACTIONS(1506), 1,
aux_sym_variable_substitution_token1,
[14874] = 1,
ACTIONS(1508), 1,
anon_sym_RPAREN,
[14878] = 1,
ACTIONS(1391), 1,
anon_sym_RBRACK,
[14882] = 1,
ACTIONS(1412), 1,
anon_sym_RBRACK,
[14886] = 1,
ACTIONS(1510), 1,
anon_sym_RBRACK,
[14890] = 1,
ACTIONS(1512), 1,
aux_sym_variable_substitution_token1,
[14894] = 1,
ACTIONS(1514), 1,
aux_sym_variable_substitution_token1,
[14898] = 1,
ACTIONS(1516), 1,
anon_sym_RBRACK,
[14902] = 1,
ACTIONS(1345), 1,
anon_sym_RBRACK,
[14906] = 1,
ACTIONS(1061), 1,
anon_sym_RBRACK,
[14910] = 1,
ACTIONS(1371), 1,
anon_sym_RBRACK,
[14914] = 1,
ACTIONS(1518), 1,
sym__ident_imm,
[14918] = 1,
ACTIONS(1520), 1,
anon_sym_RBRACK,
[14922] = 1,
ACTIONS(1315), 1,
anon_sym_RBRACK,
[14926] = 1,
ACTIONS(1361), 1,
anon_sym_RBRACK,
[14930] = 1,
ACTIONS(1522), 1,
aux_sym_variable_substitution_token1,
[14934] = 1,
ACTIONS(1524), 1,
aux_sym_variable_substitution_token1,
[14938] = 1,
ACTIONS(1379), 1,
anon_sym_RBRACK,
[14942] = 1,
ACTIONS(1526), 1,
anon_sym_RBRACE,
[14946] = 1,
ACTIONS(1528), 1,
aux_sym_variable_substitution_token1,
[14950] = 1,
ACTIONS(1530), 1,
anon_sym_RBRACK,
[14954] = 1,
ACTIONS(1532), 1,
ts_builtin_sym_end,
[14958] = 1,
ACTIONS(1534), 1,
aux_sym_variable_substitution_token1,
[14962] = 1,
ACTIONS(1068), 1,
anon_sym_RBRACK,
[14966] = 1,
ACTIONS(1395), 1,
anon_sym_RBRACK,
[14970] = 1,
ACTIONS(1536), 1,
aux_sym_variable_substitution_token1,
[14974] = 1,
ACTIONS(1538), 1,
sym__ident_imm,
[14978] = 1,
ACTIONS(1540), 1,
sym__ident_imm,
[14982] = 1,
ACTIONS(1542), 1,
aux_sym_variable_substitution_token1,
[14986] = 1,
ACTIONS(1544), 1,
anon_sym_RBRACE,
[14990] = 1,
ACTIONS(1546), 1,
anon_sym_RBRACE,
[14994] = 1,
ACTIONS(1548), 1,
aux_sym_variable_substitution_token1,
[14998] = 1,
ACTIONS(1319), 1,
anon_sym_RBRACK,
[15002] = 1,
ACTIONS(1550), 1,
anon_sym_RPAREN,
[15006] = 1,
ACTIONS(1552), 1,
aux_sym_variable_substitution_token1,
[15010] = 1,
ACTIONS(1407), 1,
anon_sym_RBRACK,
[15014] = 1,
ACTIONS(1554), 1,
anon_sym_LBRACE,
[15018] = 1,
ACTIONS(1556), 1,
aux_sym_variable_substitution_token1,
[15022] = 1,
ACTIONS(1327), 1,
anon_sym_RBRACK,
[15026] = 1,
ACTIONS(1341), 1,
anon_sym_RBRACK,
[15030] = 1,
ACTIONS(1323), 1,
anon_sym_RBRACK,
[15034] = 1,
ACTIONS(1558), 1,
sym_simple_word,
[15038] = 1,
ACTIONS(1560), 1,
anon_sym_RPAREN,
[15042] = 1,
ACTIONS(1562), 1,
sym__ident_imm,
[15046] = 1,
ACTIONS(1564), 1,
anon_sym_LPAREN2,
[15050] = 1,
ACTIONS(1566), 1,
anon_sym_LBRACE,
[15054] = 1,
ACTIONS(1307), 1,
anon_sym_RBRACK,
[15058] = 1,
ACTIONS(1568), 1,
anon_sym_error,
[15062] = 1,
ACTIONS(1570), 1,
anon_sym_error,
[15066] = 1,
ACTIONS(1015), 1,
anon_sym_RBRACK,
[15070] = 1,
ACTIONS(1572), 1,
anon_sym_RBRACE,
[15074] = 1,
ACTIONS(1574), 1,
sym__ident_imm,
[15078] = 1,
ACTIONS(1576), 1,
anon_sym_error,
[15082] = 1,
ACTIONS(1578), 1,
sym__ident_imm,
[15086] = 1,
ACTIONS(1162), 1,
anon_sym_RBRACK,
[15090] = 1,
ACTIONS(1580), 1,
anon_sym_LPAREN2,
[15094] = 1,
ACTIONS(1582), 1,
anon_sym_RPAREN,
};
static const uint32_t ts_small_parse_table_map[] = {
[SMALL_STATE(2)] = 0,
[SMALL_STATE(3)] = 92,
[SMALL_STATE(4)] = 184,
[SMALL_STATE(5)] = 276,
[SMALL_STATE(6)] = 368,
[SMALL_STATE(7)] = 460,
[SMALL_STATE(8)] = 552,
[SMALL_STATE(9)] = 644,
[SMALL_STATE(10)] = 736,
[SMALL_STATE(11)] = 828,
[SMALL_STATE(12)] = 920,
[SMALL_STATE(13)] = 1012,
[SMALL_STATE(14)] = 1104,
[SMALL_STATE(15)] = 1193,
[SMALL_STATE(16)] = 1278,
[SMALL_STATE(17)] = 1363,
[SMALL_STATE(18)] = 1448,
[SMALL_STATE(19)] = 1533,
[SMALL_STATE(20)] = 1618,
[SMALL_STATE(21)] = 1700,
[SMALL_STATE(22)] = 1782,
[SMALL_STATE(23)] = 1864,
[SMALL_STATE(24)] = 1946,
[SMALL_STATE(25)] = 2028,
[SMALL_STATE(26)] = 2110,
[SMALL_STATE(27)] = 2192,
[SMALL_STATE(28)] = 2274,
[SMALL_STATE(29)] = 2356,
[SMALL_STATE(30)] = 2438,
[SMALL_STATE(31)] = 2481,
[SMALL_STATE(32)] = 2524,
[SMALL_STATE(33)] = 2567,
[SMALL_STATE(34)] = 2610,
[SMALL_STATE(35)] = 2653,
[SMALL_STATE(36)] = 2692,
[SMALL_STATE(37)] = 2727,
[SMALL_STATE(38)] = 2766,
[SMALL_STATE(39)] = 2799,
[SMALL_STATE(40)] = 2832,
[SMALL_STATE(41)] = 2865,
[SMALL_STATE(42)] = 2898,
[SMALL_STATE(43)] = 2931,
[SMALL_STATE(44)] = 2964,
[SMALL_STATE(45)] = 2997,
[SMALL_STATE(46)] = 3031,
[SMALL_STATE(47)] = 3071,
[SMALL_STATE(48)] = 3127,
[SMALL_STATE(49)] = 3183,
[SMALL_STATE(50)] = 3241,
[SMALL_STATE(51)] = 3291,
[SMALL_STATE(52)] = 3351,
[SMALL_STATE(53)] = 3383,
[SMALL_STATE(54)] = 3415,
[SMALL_STATE(55)] = 3457,
[SMALL_STATE(56)] = 3503,
[SMALL_STATE(57)] = 3551,
[SMALL_STATE(58)] = 3603,
[SMALL_STATE(59)] = 3657,
[SMALL_STATE(60)] = 3689,
[SMALL_STATE(61)] = 3721,
[SMALL_STATE(62)] = 3753,
[SMALL_STATE(63)] = 3791,
[SMALL_STATE(64)] = 3851,
[SMALL_STATE(65)] = 3911,
[SMALL_STATE(66)] = 3971,
[SMALL_STATE(67)] = 4031,
[SMALL_STATE(68)] = 4091,
[SMALL_STATE(69)] = 4151,
[SMALL_STATE(70)] = 4211,
[SMALL_STATE(71)] = 4271,
[SMALL_STATE(72)] = 4301,
[SMALL_STATE(73)] = 4344,
[SMALL_STATE(74)] = 4387,
[SMALL_STATE(75)] = 4430,
[SMALL_STATE(76)] = 4473,
[SMALL_STATE(77)] = 4500,
[SMALL_STATE(78)] = 4543,
[SMALL_STATE(79)] = 4586,
[SMALL_STATE(80)] = 4629,
[SMALL_STATE(81)] = 4672,
[SMALL_STATE(82)] = 4715,
[SMALL_STATE(83)] = 4758,
[SMALL_STATE(84)] = 4801,
[SMALL_STATE(85)] = 4844,
[SMALL_STATE(86)] = 4887,
[SMALL_STATE(87)] = 4930,
[SMALL_STATE(88)] = 4973,
[SMALL_STATE(89)] = 5016,
[SMALL_STATE(90)] = 5059,
[SMALL_STATE(91)] = 5102,
[SMALL_STATE(92)] = 5145,
[SMALL_STATE(93)] = 5188,
[SMALL_STATE(94)] = 5231,
[SMALL_STATE(95)] = 5274,
[SMALL_STATE(96)] = 5317,
[SMALL_STATE(97)] = 5357,
[SMALL_STATE(98)] = 5397,
[SMALL_STATE(99)] = 5434,
[SMALL_STATE(100)] = 5471,
[SMALL_STATE(101)] = 5508,
[SMALL_STATE(102)] = 5534,
[SMALL_STATE(103)] = 5560,
[SMALL_STATE(104)] = 5598,
[SMALL_STATE(105)] = 5624,
[SMALL_STATE(106)] = 5650,
[SMALL_STATE(107)] = 5676,
[SMALL_STATE(108)] = 5714,
[SMALL_STATE(109)] = 5745,
[SMALL_STATE(110)] = 5770,
[SMALL_STATE(111)] = 5805,
[SMALL_STATE(112)] = 5840,
[SMALL_STATE(113)] = 5877,
[SMALL_STATE(114)] = 5912,
[SMALL_STATE(115)] = 5947,
[SMALL_STATE(116)] = 5978,
[SMALL_STATE(117)] = 6008,
[SMALL_STATE(118)] = 6032,
[SMALL_STATE(119)] = 6062,
[SMALL_STATE(120)] = 6086,
[SMALL_STATE(121)] = 6118,
[SMALL_STATE(122)] = 6136,
[SMALL_STATE(123)] = 6160,
[SMALL_STATE(124)] = 6184,
[SMALL_STATE(125)] = 6206,
[SMALL_STATE(126)] = 6238,
[SMALL_STATE(127)] = 6270,
[SMALL_STATE(128)] = 6294,
[SMALL_STATE(129)] = 6318,
[SMALL_STATE(130)] = 6350,
[SMALL_STATE(131)] = 6382,
[SMALL_STATE(132)] = 6412,
[SMALL_STATE(133)] = 6444,
[SMALL_STATE(134)] = 6476,
[SMALL_STATE(135)] = 6500,
[SMALL_STATE(136)] = 6524,
[SMALL_STATE(137)] = 6554,
[SMALL_STATE(138)] = 6586,
[SMALL_STATE(139)] = 6618,
[SMALL_STATE(140)] = 6642,
[SMALL_STATE(141)] = 6666,
[SMALL_STATE(142)] = 6688,
[SMALL_STATE(143)] = 6710,
[SMALL_STATE(144)] = 6742,
[SMALL_STATE(145)] = 6772,
[SMALL_STATE(146)] = 6804,
[SMALL_STATE(147)] = 6823,
[SMALL_STATE(148)] = 6854,
[SMALL_STATE(149)] = 6885,
[SMALL_STATE(150)] = 6916,
[SMALL_STATE(151)] = 6947,
[SMALL_STATE(152)] = 6976,
[SMALL_STATE(153)] = 6995,
[SMALL_STATE(154)] = 7026,
[SMALL_STATE(155)] = 7057,
[SMALL_STATE(156)] = 7086,
[SMALL_STATE(157)] = 7117,
[SMALL_STATE(158)] = 7148,
[SMALL_STATE(159)] = 7167,
[SMALL_STATE(160)] = 7198,
[SMALL_STATE(161)] = 7229,
[SMALL_STATE(162)] = 7260,
[SMALL_STATE(163)] = 7291,
[SMALL_STATE(164)] = 7322,
[SMALL_STATE(165)] = 7353,
[SMALL_STATE(166)] = 7384,
[SMALL_STATE(167)] = 7415,
[SMALL_STATE(168)] = 7444,
[SMALL_STATE(169)] = 7475,
[SMALL_STATE(170)] = 7506,
[SMALL_STATE(171)] = 7525,
[SMALL_STATE(172)] = 7556,
[SMALL_STATE(173)] = 7581,
[SMALL_STATE(174)] = 7604,
[SMALL_STATE(175)] = 7635,
[SMALL_STATE(176)] = 7658,
[SMALL_STATE(177)] = 7681,
[SMALL_STATE(178)] = 7704,
[SMALL_STATE(179)] = 7727,
[SMALL_STATE(180)] = 7750,
[SMALL_STATE(181)] = 7773,
[SMALL_STATE(182)] = 7802,
[SMALL_STATE(183)] = 7831,
[SMALL_STATE(184)] = 7854,
[SMALL_STATE(185)] = 7885,
[SMALL_STATE(186)] = 7914,
[SMALL_STATE(187)] = 7943,
[SMALL_STATE(188)] = 7966,
[SMALL_STATE(189)] = 7985,
[SMALL_STATE(190)] = 8014,
[SMALL_STATE(191)] = 8043,
[SMALL_STATE(192)] = 8074,
[SMALL_STATE(193)] = 8097,
[SMALL_STATE(194)] = 8128,
[SMALL_STATE(195)] = 8159,
[SMALL_STATE(196)] = 8190,
[SMALL_STATE(197)] = 8221,
[SMALL_STATE(198)] = 8250,
[SMALL_STATE(199)] = 8281,
[SMALL_STATE(200)] = 8312,
[SMALL_STATE(201)] = 8340,
[SMALL_STATE(202)] = 8368,
[SMALL_STATE(203)] = 8396,
[SMALL_STATE(204)] = 8424,
[SMALL_STATE(205)] = 8452,
[SMALL_STATE(206)] = 8480,
[SMALL_STATE(207)] = 8504,
[SMALL_STATE(208)] = 8532,
[SMALL_STATE(209)] = 8560,
[SMALL_STATE(210)] = 8588,
[SMALL_STATE(211)] = 8608,
[SMALL_STATE(212)] = 8630,
[SMALL_STATE(213)] = 8658,
[SMALL_STATE(214)] = 8686,
[SMALL_STATE(215)] = 8714,
[SMALL_STATE(216)] = 8730,
[SMALL_STATE(217)] = 8746,
[SMALL_STATE(218)] = 8768,
[SMALL_STATE(219)] = 8790,
[SMALL_STATE(220)] = 8818,
[SMALL_STATE(221)] = 8834,
[SMALL_STATE(222)] = 8850,
[SMALL_STATE(223)] = 8870,
[SMALL_STATE(224)] = 8892,
[SMALL_STATE(225)] = 8920,
[SMALL_STATE(226)] = 8942,
[SMALL_STATE(227)] = 8964,
[SMALL_STATE(228)] = 8986,
[SMALL_STATE(229)] = 9002,
[SMALL_STATE(230)] = 9024,
[SMALL_STATE(231)] = 9044,
[SMALL_STATE(232)] = 9066,
[SMALL_STATE(233)] = 9094,
[SMALL_STATE(234)] = 9110,
[SMALL_STATE(235)] = 9138,
[SMALL_STATE(236)] = 9166,
[SMALL_STATE(237)] = 9188,
[SMALL_STATE(238)] = 9210,
[SMALL_STATE(239)] = 9232,
[SMALL_STATE(240)] = 9254,
[SMALL_STATE(241)] = 9282,
[SMALL_STATE(242)] = 9304,
[SMALL_STATE(243)] = 9332,
[SMALL_STATE(244)] = 9360,
[SMALL_STATE(245)] = 9388,
[SMALL_STATE(246)] = 9416,
[SMALL_STATE(247)] = 9444,
[SMALL_STATE(248)] = 9472,
[SMALL_STATE(249)] = 9500,
[SMALL_STATE(250)] = 9528,
[SMALL_STATE(251)] = 9556,
[SMALL_STATE(252)] = 9584,
[SMALL_STATE(253)] = 9612,
[SMALL_STATE(254)] = 9640,
[SMALL_STATE(255)] = 9668,
[SMALL_STATE(256)] = 9696,
[SMALL_STATE(257)] = 9724,
[SMALL_STATE(258)] = 9752,
[SMALL_STATE(259)] = 9780,
[SMALL_STATE(260)] = 9808,
[SMALL_STATE(261)] = 9836,
[SMALL_STATE(262)] = 9864,
[SMALL_STATE(263)] = 9880,
[SMALL_STATE(264)] = 9896,
[SMALL_STATE(265)] = 9924,
[SMALL_STATE(266)] = 9952,
[SMALL_STATE(267)] = 9980,
[SMALL_STATE(268)] = 10008,
[SMALL_STATE(269)] = 10024,
[SMALL_STATE(270)] = 10052,
[SMALL_STATE(271)] = 10080,
[SMALL_STATE(272)] = 10108,
[SMALL_STATE(273)] = 10136,
[SMALL_STATE(274)] = 10164,
[SMALL_STATE(275)] = 10192,
[SMALL_STATE(276)] = 10220,
[SMALL_STATE(277)] = 10236,
[SMALL_STATE(278)] = 10264,
[SMALL_STATE(279)] = 10292,
[SMALL_STATE(280)] = 10314,
[SMALL_STATE(281)] = 10327,
[SMALL_STATE(282)] = 10346,
[SMALL_STATE(283)] = 10361,
[SMALL_STATE(284)] = 10380,
[SMALL_STATE(285)] = 10399,
[SMALL_STATE(286)] = 10424,
[SMALL_STATE(287)] = 10443,
[SMALL_STATE(288)] = 10458,
[SMALL_STATE(289)] = 10483,
[SMALL_STATE(290)] = 10496,
[SMALL_STATE(291)] = 10515,
[SMALL_STATE(292)] = 10534,
[SMALL_STATE(293)] = 10553,
[SMALL_STATE(294)] = 10578,
[SMALL_STATE(295)] = 10603,
[SMALL_STATE(296)] = 10616,
[SMALL_STATE(297)] = 10643,
[SMALL_STATE(298)] = 10662,
[SMALL_STATE(299)] = 10681,
[SMALL_STATE(300)] = 10706,
[SMALL_STATE(301)] = 10733,
[SMALL_STATE(302)] = 10752,
[SMALL_STATE(303)] = 10765,
[SMALL_STATE(304)] = 10778,
[SMALL_STATE(305)] = 10792,
[SMALL_STATE(306)] = 10810,
[SMALL_STATE(307)] = 10828,
[SMALL_STATE(308)] = 10848,
[SMALL_STATE(309)] = 10866,
[SMALL_STATE(310)] = 10880,
[SMALL_STATE(311)] = 10894,
[SMALL_STATE(312)] = 10912,
[SMALL_STATE(313)] = 10924,
[SMALL_STATE(314)] = 10944,
[SMALL_STATE(315)] = 10962,
[SMALL_STATE(316)] = 10976,
[SMALL_STATE(317)] = 10994,
[SMALL_STATE(318)] = 11008,
[SMALL_STATE(319)] = 11026,
[SMALL_STATE(320)] = 11040,
[SMALL_STATE(321)] = 11054,
[SMALL_STATE(322)] = 11072,
[SMALL_STATE(323)] = 11090,
[SMALL_STATE(324)] = 11110,
[SMALL_STATE(325)] = 11130,
[SMALL_STATE(326)] = 11150,
[SMALL_STATE(327)] = 11168,
[SMALL_STATE(328)] = 11186,
[SMALL_STATE(329)] = 11204,
[SMALL_STATE(330)] = 11218,
[SMALL_STATE(331)] = 11232,
[SMALL_STATE(332)] = 11246,
[SMALL_STATE(333)] = 11268,
[SMALL_STATE(334)] = 11292,
[SMALL_STATE(335)] = 11306,
[SMALL_STATE(336)] = 11330,
[SMALL_STATE(337)] = 11348,
[SMALL_STATE(338)] = 11361,
[SMALL_STATE(339)] = 11374,
[SMALL_STATE(340)] = 11393,
[SMALL_STATE(341)] = 11414,
[SMALL_STATE(342)] = 11431,
[SMALL_STATE(343)] = 11444,
[SMALL_STATE(344)] = 11457,
[SMALL_STATE(345)] = 11470,
[SMALL_STATE(346)] = 11483,
[SMALL_STATE(347)] = 11496,
[SMALL_STATE(348)] = 11515,
[SMALL_STATE(349)] = 11536,
[SMALL_STATE(350)] = 11555,
[SMALL_STATE(351)] = 11576,
[SMALL_STATE(352)] = 11589,
[SMALL_STATE(353)] = 11610,
[SMALL_STATE(354)] = 11623,
[SMALL_STATE(355)] = 11642,
[SMALL_STATE(356)] = 11655,
[SMALL_STATE(357)] = 11674,
[SMALL_STATE(358)] = 11695,
[SMALL_STATE(359)] = 11708,
[SMALL_STATE(360)] = 11721,
[SMALL_STATE(361)] = 11738,
[SMALL_STATE(362)] = 11757,
[SMALL_STATE(363)] = 11776,
[SMALL_STATE(364)] = 11797,
[SMALL_STATE(365)] = 11816,
[SMALL_STATE(366)] = 11829,
[SMALL_STATE(367)] = 11848,
[SMALL_STATE(368)] = 11867,
[SMALL_STATE(369)] = 11886,
[SMALL_STATE(370)] = 11905,
[SMALL_STATE(371)] = 11924,
[SMALL_STATE(372)] = 11943,
[SMALL_STATE(373)] = 11964,
[SMALL_STATE(374)] = 11977,
[SMALL_STATE(375)] = 11990,
[SMALL_STATE(376)] = 12009,
[SMALL_STATE(377)] = 12022,
[SMALL_STATE(378)] = 12035,
[SMALL_STATE(379)] = 12048,
[SMALL_STATE(380)] = 12069,
[SMALL_STATE(381)] = 12082,
[SMALL_STATE(382)] = 12101,
[SMALL_STATE(383)] = 12122,
[SMALL_STATE(384)] = 12135,
[SMALL_STATE(385)] = 12148,
[SMALL_STATE(386)] = 12169,
[SMALL_STATE(387)] = 12182,
[SMALL_STATE(388)] = 12201,
[SMALL_STATE(389)] = 12214,
[SMALL_STATE(390)] = 12233,
[SMALL_STATE(391)] = 12246,
[SMALL_STATE(392)] = 12259,
[SMALL_STATE(393)] = 12276,
[SMALL_STATE(394)] = 12295,
[SMALL_STATE(395)] = 12309,
[SMALL_STATE(396)] = 12325,
[SMALL_STATE(397)] = 12341,
[SMALL_STATE(398)] = 12353,
[SMALL_STATE(399)] = 12369,
[SMALL_STATE(400)] = 12385,
[SMALL_STATE(401)] = 12401,
[SMALL_STATE(402)] = 12417,
[SMALL_STATE(403)] = 12433,
[SMALL_STATE(404)] = 12451,
[SMALL_STATE(405)] = 12463,
[SMALL_STATE(406)] = 12481,
[SMALL_STATE(407)] = 12495,
[SMALL_STATE(408)] = 12513,
[SMALL_STATE(409)] = 12531,
[SMALL_STATE(410)] = 12543,
[SMALL_STATE(411)] = 12557,
[SMALL_STATE(412)] = 12575,
[SMALL_STATE(413)] = 12587,
[SMALL_STATE(414)] = 12601,
[SMALL_STATE(415)] = 12613,
[SMALL_STATE(416)] = 12631,
[SMALL_STATE(417)] = 12643,
[SMALL_STATE(418)] = 12655,
[SMALL_STATE(419)] = 12667,
[SMALL_STATE(420)] = 12679,
[SMALL_STATE(421)] = 12695,
[SMALL_STATE(422)] = 12713,
[SMALL_STATE(423)] = 12725,
[SMALL_STATE(424)] = 12737,
[SMALL_STATE(425)] = 12749,
[SMALL_STATE(426)] = 12761,
[SMALL_STATE(427)] = 12773,
[SMALL_STATE(428)] = 12785,
[SMALL_STATE(429)] = 12797,
[SMALL_STATE(430)] = 12815,
[SMALL_STATE(431)] = 12833,
[SMALL_STATE(432)] = 12851,
[SMALL_STATE(433)] = 12867,
[SMALL_STATE(434)] = 12879,
[SMALL_STATE(435)] = 12891,
[SMALL_STATE(436)] = 12909,
[SMALL_STATE(437)] = 12920,
[SMALL_STATE(438)] = 12937,
[SMALL_STATE(439)] = 12954,
[SMALL_STATE(440)] = 12965,
[SMALL_STATE(441)] = 12976,
[SMALL_STATE(442)] = 12987,
[SMALL_STATE(443)] = 13000,
[SMALL_STATE(444)] = 13011,
[SMALL_STATE(445)] = 13028,
[SMALL_STATE(446)] = 13045,
[SMALL_STATE(447)] = 13062,
[SMALL_STATE(448)] = 13073,
[SMALL_STATE(449)] = 13084,
[SMALL_STATE(450)] = 13095,
[SMALL_STATE(451)] = 13112,
[SMALL_STATE(452)] = 13123,
[SMALL_STATE(453)] = 13134,
[SMALL_STATE(454)] = 13145,
[SMALL_STATE(455)] = 13162,
[SMALL_STATE(456)] = 13176,
[SMALL_STATE(457)] = 13190,
[SMALL_STATE(458)] = 13200,
[SMALL_STATE(459)] = 13208,
[SMALL_STATE(460)] = 13216,
[SMALL_STATE(461)] = 13230,
[SMALL_STATE(462)] = 13246,
[SMALL_STATE(463)] = 13260,
[SMALL_STATE(464)] = 13276,
[SMALL_STATE(465)] = 13286,
[SMALL_STATE(466)] = 13302,
[SMALL_STATE(467)] = 13316,
[SMALL_STATE(468)] = 13332,
[SMALL_STATE(469)] = 13342,
[SMALL_STATE(470)] = 13358,
[SMALL_STATE(471)] = 13372,
[SMALL_STATE(472)] = 13380,
[SMALL_STATE(473)] = 13388,
[SMALL_STATE(474)] = 13404,
[SMALL_STATE(475)] = 13412,
[SMALL_STATE(476)] = 13428,
[SMALL_STATE(477)] = 13436,
[SMALL_STATE(478)] = 13450,
[SMALL_STATE(479)] = 13466,
[SMALL_STATE(480)] = 13482,
[SMALL_STATE(481)] = 13498,
[SMALL_STATE(482)] = 13512,
[SMALL_STATE(483)] = 13522,
[SMALL_STATE(484)] = 13538,
[SMALL_STATE(485)] = 13554,
[SMALL_STATE(486)] = 13568,
[SMALL_STATE(487)] = 13578,
[SMALL_STATE(488)] = 13594,
[SMALL_STATE(489)] = 13604,
[SMALL_STATE(490)] = 13620,
[SMALL_STATE(491)] = 13636,
[SMALL_STATE(492)] = 13652,
[SMALL_STATE(493)] = 13668,
[SMALL_STATE(494)] = 13682,
[SMALL_STATE(495)] = 13698,
[SMALL_STATE(496)] = 13708,
[SMALL_STATE(497)] = 13722,
[SMALL_STATE(498)] = 13738,
[SMALL_STATE(499)] = 13754,
[SMALL_STATE(500)] = 13770,
[SMALL_STATE(501)] = 13778,
[SMALL_STATE(502)] = 13788,
[SMALL_STATE(503)] = 13802,
[SMALL_STATE(504)] = 13810,
[SMALL_STATE(505)] = 13824,
[SMALL_STATE(506)] = 13840,
[SMALL_STATE(507)] = 13854,
[SMALL_STATE(508)] = 13870,
[SMALL_STATE(509)] = 13878,
[SMALL_STATE(510)] = 13886,
[SMALL_STATE(511)] = 13897,
[SMALL_STATE(512)] = 13904,
[SMALL_STATE(513)] = 13915,
[SMALL_STATE(514)] = 13926,
[SMALL_STATE(515)] = 13937,
[SMALL_STATE(516)] = 13944,
[SMALL_STATE(517)] = 13957,
[SMALL_STATE(518)] = 13964,
[SMALL_STATE(519)] = 13971,
[SMALL_STATE(520)] = 13984,
[SMALL_STATE(521)] = 13991,
[SMALL_STATE(522)] = 14004,
[SMALL_STATE(523)] = 14015,
[SMALL_STATE(524)] = 14026,
[SMALL_STATE(525)] = 14037,
[SMALL_STATE(526)] = 14046,
[SMALL_STATE(527)] = 14055,
[SMALL_STATE(528)] = 14068,
[SMALL_STATE(529)] = 14079,
[SMALL_STATE(530)] = 14088,
[SMALL_STATE(531)] = 14095,
[SMALL_STATE(532)] = 14103,
[SMALL_STATE(533)] = 14111,
[SMALL_STATE(534)] = 14119,
[SMALL_STATE(535)] = 14129,
[SMALL_STATE(536)] = 14137,
[SMALL_STATE(537)] = 14145,
[SMALL_STATE(538)] = 14153,
[SMALL_STATE(539)] = 14161,
[SMALL_STATE(540)] = 14169,
[SMALL_STATE(541)] = 14177,
[SMALL_STATE(542)] = 14185,
[SMALL_STATE(543)] = 14193,
[SMALL_STATE(544)] = 14199,
[SMALL_STATE(545)] = 14207,
[SMALL_STATE(546)] = 14215,
[SMALL_STATE(547)] = 14221,
[SMALL_STATE(548)] = 14229,
[SMALL_STATE(549)] = 14239,
[SMALL_STATE(550)] = 14247,
[SMALL_STATE(551)] = 14255,
[SMALL_STATE(552)] = 14263,
[SMALL_STATE(553)] = 14271,
[SMALL_STATE(554)] = 14281,
[SMALL_STATE(555)] = 14289,
[SMALL_STATE(556)] = 14299,
[SMALL_STATE(557)] = 14307,
[SMALL_STATE(558)] = 14315,
[SMALL_STATE(559)] = 14323,
[SMALL_STATE(560)] = 14333,
[SMALL_STATE(561)] = 14341,
[SMALL_STATE(562)] = 14351,
[SMALL_STATE(563)] = 14359,
[SMALL_STATE(564)] = 14367,
[SMALL_STATE(565)] = 14375,
[SMALL_STATE(566)] = 14383,
[SMALL_STATE(567)] = 14391,
[SMALL_STATE(568)] = 14401,
[SMALL_STATE(569)] = 14407,
[SMALL_STATE(570)] = 14415,
[SMALL_STATE(571)] = 14425,
[SMALL_STATE(572)] = 14433,
[SMALL_STATE(573)] = 14443,
[SMALL_STATE(574)] = 14451,
[SMALL_STATE(575)] = 14461,
[SMALL_STATE(576)] = 14469,
[SMALL_STATE(577)] = 14477,
[SMALL_STATE(578)] = 14483,
[SMALL_STATE(579)] = 14489,
[SMALL_STATE(580)] = 14497,
[SMALL_STATE(581)] = 14507,
[SMALL_STATE(582)] = 14515,
[SMALL_STATE(583)] = 14525,
[SMALL_STATE(584)] = 14533,
[SMALL_STATE(585)] = 14539,
[SMALL_STATE(586)] = 14547,
[SMALL_STATE(587)] = 14555,
[SMALL_STATE(588)] = 14563,
[SMALL_STATE(589)] = 14573,
[SMALL_STATE(590)] = 14581,
[SMALL_STATE(591)] = 14591,
[SMALL_STATE(592)] = 14601,
[SMALL_STATE(593)] = 14611,
[SMALL_STATE(594)] = 14621,
[SMALL_STATE(595)] = 14631,
[SMALL_STATE(596)] = 14639,
[SMALL_STATE(597)] = 14646,
[SMALL_STATE(598)] = 14650,
[SMALL_STATE(599)] = 14654,
[SMALL_STATE(600)] = 14658,
[SMALL_STATE(601)] = 14662,
[SMALL_STATE(602)] = 14666,
[SMALL_STATE(603)] = 14670,
[SMALL_STATE(604)] = 14674,
[SMALL_STATE(605)] = 14678,
[SMALL_STATE(606)] = 14682,
[SMALL_STATE(607)] = 14686,
[SMALL_STATE(608)] = 14690,
[SMALL_STATE(609)] = 14694,
[SMALL_STATE(610)] = 14698,
[SMALL_STATE(611)] = 14702,
[SMALL_STATE(612)] = 14706,
[SMALL_STATE(613)] = 14710,
[SMALL_STATE(614)] = 14714,
[SMALL_STATE(615)] = 14718,
[SMALL_STATE(616)] = 14722,
[SMALL_STATE(617)] = 14726,
[SMALL_STATE(618)] = 14730,
[SMALL_STATE(619)] = 14734,
[SMALL_STATE(620)] = 14738,
[SMALL_STATE(621)] = 14742,
[SMALL_STATE(622)] = 14746,
[SMALL_STATE(623)] = 14750,
[SMALL_STATE(624)] = 14754,
[SMALL_STATE(625)] = 14758,
[SMALL_STATE(626)] = 14762,
[SMALL_STATE(627)] = 14766,
[SMALL_STATE(628)] = 14770,
[SMALL_STATE(629)] = 14774,
[SMALL_STATE(630)] = 14778,
[SMALL_STATE(631)] = 14782,
[SMALL_STATE(632)] = 14786,
[SMALL_STATE(633)] = 14790,
[SMALL_STATE(634)] = 14794,
[SMALL_STATE(635)] = 14798,
[SMALL_STATE(636)] = 14802,
[SMALL_STATE(637)] = 14806,
[SMALL_STATE(638)] = 14810,
[SMALL_STATE(639)] = 14814,
[SMALL_STATE(640)] = 14818,
[SMALL_STATE(641)] = 14822,
[SMALL_STATE(642)] = 14826,
[SMALL_STATE(643)] = 14830,
[SMALL_STATE(644)] = 14834,
[SMALL_STATE(645)] = 14838,
[SMALL_STATE(646)] = 14842,
[SMALL_STATE(647)] = 14846,
[SMALL_STATE(648)] = 14850,
[SMALL_STATE(649)] = 14854,
[SMALL_STATE(650)] = 14858,
[SMALL_STATE(651)] = 14862,
[SMALL_STATE(652)] = 14866,
[SMALL_STATE(653)] = 14870,
[SMALL_STATE(654)] = 14874,
[SMALL_STATE(655)] = 14878,
[SMALL_STATE(656)] = 14882,
[SMALL_STATE(657)] = 14886,
[SMALL_STATE(658)] = 14890,
[SMALL_STATE(659)] = 14894,
[SMALL_STATE(660)] = 14898,
[SMALL_STATE(661)] = 14902,
[SMALL_STATE(662)] = 14906,
[SMALL_STATE(663)] = 14910,
[SMALL_STATE(664)] = 14914,
[SMALL_STATE(665)] = 14918,
[SMALL_STATE(666)] = 14922,
[SMALL_STATE(667)] = 14926,
[SMALL_STATE(668)] = 14930,
[SMALL_STATE(669)] = 14934,
[SMALL_STATE(670)] = 14938,
[SMALL_STATE(671)] = 14942,
[SMALL_STATE(672)] = 14946,
[SMALL_STATE(673)] = 14950,
[SMALL_STATE(674)] = 14954,
[SMALL_STATE(675)] = 14958,
[SMALL_STATE(676)] = 14962,
[SMALL_STATE(677)] = 14966,
[SMALL_STATE(678)] = 14970,
[SMALL_STATE(679)] = 14974,
[SMALL_STATE(680)] = 14978,
[SMALL_STATE(681)] = 14982,
[SMALL_STATE(682)] = 14986,
[SMALL_STATE(683)] = 14990,
[SMALL_STATE(684)] = 14994,
[SMALL_STATE(685)] = 14998,
[SMALL_STATE(686)] = 15002,
[SMALL_STATE(687)] = 15006,
[SMALL_STATE(688)] = 15010,
[SMALL_STATE(689)] = 15014,
[SMALL_STATE(690)] = 15018,
[SMALL_STATE(691)] = 15022,
[SMALL_STATE(692)] = 15026,
[SMALL_STATE(693)] = 15030,
[SMALL_STATE(694)] = 15034,
[SMALL_STATE(695)] = 15038,
[SMALL_STATE(696)] = 15042,
[SMALL_STATE(697)] = 15046,
[SMALL_STATE(698)] = 15050,
[SMALL_STATE(699)] = 15054,
[SMALL_STATE(700)] = 15058,
[SMALL_STATE(701)] = 15062,
[SMALL_STATE(702)] = 15066,
[SMALL_STATE(703)] = 15070,
[SMALL_STATE(704)] = 15074,
[SMALL_STATE(705)] = 15078,
[SMALL_STATE(706)] = 15082,
[SMALL_STATE(707)] = 15086,
[SMALL_STATE(708)] = 15090,
[SMALL_STATE(709)] = 15094,
};
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}}, REDUCE(sym_source_file, 0, 0, 0),
[5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(109),
[7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2),
[9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(596),
[11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(248),
[13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(189),
[15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(155),
[17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(534),
[19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136),
[21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(110),
[23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174),
[25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(265),
[27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(507),
[29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(16),
[31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(516),
[33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195),
[35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(197),
[37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(169),
[39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(339),
[41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(170),
[43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(23),
[45] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0),
[47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3),
[49] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0),
[51] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(109),
[54] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(3),
[57] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(596),
[60] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(248),
[63] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(189),
[66] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(155),
[69] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(534),
[72] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(136),
[75] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(110),
[78] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(174),
[81] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(265),
[84] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(507),
[87] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(16),
[90] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(516),
[93] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(195),
[96] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(197),
[99] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(169),
[102] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(339),
[105] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(170),
[108] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(23),
[111] = {.entry = {.count = 1, .reusable = false}}, SHIFT(71),
[113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(566),
[115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(414),
[117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(303),
[119] = {.entry = {.count = 1, .reusable = false}}, SHIFT(302),
[121] = {.entry = {.count = 1, .reusable = false}}, SHIFT(419),
[123] = {.entry = {.count = 1, .reusable = false}}, SHIFT(486),
[125] = {.entry = {.count = 1, .reusable = false}}, SHIFT(517),
[127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(530),
[129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(495),
[131] = {.entry = {.count = 1, .reusable = false}}, SHIFT(383),
[133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337),
[135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(463),
[137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(418),
[139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170),
[141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(465),
[143] = {.entry = {.count = 1, .reusable = false}}, SHIFT(289),
[145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487),
[147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(501),
[149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(475),
[151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(511),
[153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(480),
[155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(344),
[157] = {.entry = {.count = 1, .reusable = false}}, SHIFT(172),
[159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(608),
[161] = {.entry = {.count = 1, .reusable = false}}, SHIFT(242),
[163] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181),
[165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(190),
[167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(588),
[169] = {.entry = {.count = 1, .reusable = false}}, SHIFT(205),
[171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(111),
[173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(193),
[175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(244),
[177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(461),
[179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(19),
[181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(527),
[183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(198),
[185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(182),
[187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147),
[189] = {.entry = {.count = 1, .reusable = false}}, SHIFT(375),
[191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290),
[193] = {.entry = {.count = 1, .reusable = false}}, SHIFT(22),
[195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(639),
[197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(665),
[199] = {.entry = {.count = 1, .reusable = false}}, SHIFT(660),
[201] = {.entry = {.count = 1, .reusable = false}}, SHIFT(657),
[203] = {.entry = {.count = 1, .reusable = false}}, SHIFT(673),
[205] = {.entry = {.count = 1, .reusable = false}}, SHIFT(609),
[207] = {.entry = {.count = 1, .reusable = false}}, SHIFT(617),
[209] = {.entry = {.count = 1, .reusable = false}}, SHIFT(625),
[211] = {.entry = {.count = 1, .reusable = false}}, SHIFT(633),
[213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644),
[215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__id_immediate, 2, 0, 0),
[217] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__id_immediate, 2, 0, 0),
[219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__id_immediate, 3, 0, 0),
[221] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__id_immediate, 3, 0, 0),
[223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(644),
[226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0),
[228] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0),
[230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__id_immediate, 1, 0, 0),
[232] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__id_immediate, 1, 0, 0),
[234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240),
[236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_substitution, 2, 0, 0),
[238] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_substitution, 2, 0, 0),
[240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_substitution, 4, 0, 0),
[242] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_substitution, 4, 0, 0),
[244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_substitution, 5, 0, 0),
[246] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_substitution, 5, 0, 0),
[248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_index, 3, 0, 0),
[250] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_index, 3, 0, 0),
[252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr_atom_no_brace, 4, 0, 0),
[254] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expr_atom_no_brace, 4, 0, 0),
[256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_quoted_word, 2, 0, 0),
[258] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_quoted_word, 2, 0, 0),
[260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_quoted_word, 3, 0, 0),
[262] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_quoted_word, 3, 0, 0),
[264] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_substitution, 3, 0, 0),
[266] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_substitution, 3, 0, 0),
[268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_command_substitution, 3, 0, 0),
[270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_command_substitution, 3, 0, 0),
[272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binop_expr, 3, 0, 0),
[274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92),
[276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binop_expr, 3, 0, 0),
[278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88),
[280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84),
[282] = {.entry = {.count = 1, .reusable = false}}, SHIFT(84),
[284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94),
[286] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73),
[288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73),
[290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75),
[292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78),
[294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83),
[296] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72),
[298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93),
[300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(95),
[302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77),
[304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ternary_expr, 5, 0, 0),
[306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85),
[308] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_braced_word_simple, 2, 0, 0),
[310] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_braced_word_simple, 2, 0, 0),
[312] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_braced_word_simple, 3, 0, 0),
[314] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_braced_word_simple, 3, 0, 0),
[316] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 3, 0, 0),
[318] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expr, 3, 0, 0),
[320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expr, 2, 0, 0),
[322] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expr, 2, 0, 0),
[324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91),
[326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80),
[328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40),
[330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59),
[332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(662),
[334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532),
[336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551),
[338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409),
[340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433),
[342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_braced_word_repeat1, 2, 0, 0),
[344] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_braced_word_repeat1, 2, 0, 0), SHIFT_REPEAT(71),
[347] = {.entry = {.count = 1, .reusable = false}}, SHIFT(708),
[349] = {.entry = {.count = 1, .reusable = false}}, SHIFT(497),
[351] = {.entry = {.count = 1, .reusable = false}}, SHIFT(125),
[353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(57),
[355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(79),
[357] = {.entry = {.count = 1, .reusable = false}}, SHIFT(81),
[359] = {.entry = {.count = 1, .reusable = false}}, SHIFT(368),
[361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57),
[363] = {.entry = {.count = 1, .reusable = false}}, SHIFT(29),
[365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54),
[367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54),
[369] = {.entry = {.count = 1, .reusable = false}}, SHIFT(70),
[371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70),
[373] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55),
[375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55),
[377] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0),
[379] = {.entry = {.count = 1, .reusable = false}}, SHIFT(48),
[381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48),
[383] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56),
[385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56),
[387] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65),
[389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65),
[391] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51),
[393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51),
[395] = {.entry = {.count = 1, .reusable = false}}, SHIFT(60),
[397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60),
[399] = {.entry = {.count = 1, .reusable = false}}, SHIFT(69),
[401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69),
[403] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50),
[405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50),
[407] = {.entry = {.count = 1, .reusable = false}}, SHIFT(45),
[409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45),
[411] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49),
[413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49),
[415] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68),
[417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68),
[419] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67),
[421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67),
[423] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62),
[425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62),
[427] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66),
[429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66),
[431] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64),
[433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64),
[435] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63),
[437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63),
[439] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61),
[441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61),
[443] = {.entry = {.count = 1, .reusable = false}}, SHIFT(58),
[445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58),
[447] = {.entry = {.count = 1, .reusable = false}}, SHIFT(46),
[449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46),
[451] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47),
[453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47),
[455] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_command, 2, 0, 2),
[457] = {.entry = {.count = 1, .reusable = false}}, SHIFT(249),
[459] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_command, 1, 0, 1),
[461] = {.entry = {.count = 1, .reusable = false}}, SHIFT(504),
[463] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 2, 0, 0),
[465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270),
[467] = {.entry = {.count = 1, .reusable = false}}, SHIFT(484),
[469] = {.entry = {.count = 1, .reusable = false}}, SHIFT(132),
[471] = {.entry = {.count = 1, .reusable = false}}, SHIFT(361),
[473] = {.entry = {.count = 1, .reusable = false}}, SHIFT(24),
[475] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(109),
[478] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0),
[480] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(249),
[483] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(507),
[486] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(16),
[489] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(339),
[492] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(170),
[495] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(23),
[498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_word_list, 1, 0, 0),
[500] = {.entry = {.count = 1, .reusable = false}}, SHIFT(649),
[502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(208),
[504] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(649),
[507] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 5, 0, 0),
[509] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__concat_word, 1, 0, 0),
[511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235),
[513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340),
[515] = {.entry = {.count = 1, .reusable = false}}, SHIFT(512),
[517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278),
[519] = {.entry = {.count = 1, .reusable = false}}, SHIFT(499),
[521] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137),
[523] = {.entry = {.count = 1, .reusable = false}}, SHIFT(364),
[525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512),
[527] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26),
[529] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(172),
[532] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(208),
[535] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(461),
[538] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(19),
[541] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(375),
[544] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(290),
[547] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0), SHIFT_REPEAT(22),
[550] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3, 0, 0),
[552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_global, 2, 0, 0),
[554] = {.entry = {.count = 1, .reusable = false}}, SHIFT(621),
[556] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_regexp, 3, 0, 0),
[558] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(696),
[561] = {.entry = {.count = 1, .reusable = false}}, SHIFT(336),
[563] = {.entry = {.count = 1, .reusable = false}}, SHIFT(494),
[565] = {.entry = {.count = 1, .reusable = false}}, SHIFT(120),
[567] = {.entry = {.count = 1, .reusable = false}}, SHIFT(353),
[569] = {.entry = {.count = 1, .reusable = false}}, SHIFT(366),
[571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336),
[573] = {.entry = {.count = 1, .reusable = false}}, SHIFT(28),
[575] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52),
[577] = {.entry = {.count = 1, .reusable = false}}, SHIFT(53),
[579] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(621),
[582] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_id, 3, 0, 0),
[584] = {.entry = {.count = 1, .reusable = false}}, SHIFT(696),
[586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_id, 3, 0, 0),
[588] = {.entry = {.count = 1, .reusable = false}}, SHIFT(390),
[590] = {.entry = {.count = 1, .reusable = false}}, SHIFT(380),
[592] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0), SHIFT_REPEAT(109),
[595] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0),
[597] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0), SHIFT_REPEAT(507),
[600] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0), SHIFT_REPEAT(339),
[603] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0), SHIFT_REPEAT(170),
[606] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0), SHIFT_REPEAT(23),
[609] = {.entry = {.count = 1, .reusable = false}}, SHIFT(525),
[611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(529),
[613] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_id, 1, 0, 0),
[615] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_id, 1, 0, 0),
[617] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_global, 1, 0, 0),
[619] = {.entry = {.count = 1, .reusable = false}}, SHIFT(568),
[621] = {.entry = {.count = 1, .reusable = false}}, SHIFT(584),
[623] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_id, 2, 0, 0),
[625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_id, 2, 0, 0),
[627] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__concat_word_repeat1, 2, 0, 0),
[629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__concat_word_repeat1, 2, 0, 0),
[631] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_braced_word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(336),
[634] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_braced_word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(494),
[637] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_braced_word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(120),
[640] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_braced_word_simple_repeat1, 2, 0, 0),
[642] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_braced_word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(366),
[645] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_braced_word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(336),
[648] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_braced_word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(28),
[651] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_regexp, 4, 0, 0),
[653] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365),
[655] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__concat_word, 3, 0, 0),
[657] = {.entry = {.count = 1, .reusable = false}}, SHIFT(212),
[659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(206),
[661] = {.entry = {.count = 1, .reusable = false}}, SHIFT(209),
[663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(15),
[665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305),
[667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(491),
[669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(250),
[671] = {.entry = {.count = 1, .reusable = false}}, SHIFT(18),
[673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590),
[675] = {.entry = {.count = 1, .reusable = false}}, SHIFT(332),
[677] = {.entry = {.count = 1, .reusable = false}}, SHIFT(252),
[679] = {.entry = {.count = 1, .reusable = false}}, SHIFT(498),
[681] = {.entry = {.count = 1, .reusable = false}}, SHIFT(17),
[683] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370),
[685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395),
[687] = {.entry = {.count = 1, .reusable = false}}, SHIFT(21),
[689] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch, 2, 0, 0),
[691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(305),
[693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__concat_word, 2, 0, 0),
[695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(253),
[697] = {.entry = {.count = 1, .reusable = false}}, SHIFT(254),
[699] = {.entry = {.count = 1, .reusable = false}}, SHIFT(697),
[701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(479),
[703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86),
[705] = {.entry = {.count = 1, .reusable = false}}, SHIFT(552),
[707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354),
[709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
[711] = {.entry = {.count = 1, .reusable = false}}, SHIFT(255),
[713] = {.entry = {.count = 1, .reusable = false}}, SHIFT(243),
[715] = {.entry = {.count = 1, .reusable = false}}, SHIFT(256),
[717] = {.entry = {.count = 1, .reusable = false}}, SHIFT(257),
[719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(259),
[721] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260),
[723] = {.entry = {.count = 1, .reusable = false}}, SHIFT(261),
[725] = {.entry = {.count = 1, .reusable = false}}, SHIFT(234),
[727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(616),
[729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473),
[731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82),
[733] = {.entry = {.count = 1, .reusable = false}}, SHIFT(416),
[735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347),
[737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20),
[739] = {.entry = {.count = 1, .reusable = false}}, SHIFT(201),
[741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(232),
[743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(245),
[745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272),
[747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__concat_word, 1, 0, 0),
[749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357),
[751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610),
[753] = {.entry = {.count = 1, .reusable = false}}, SHIFT(264),
[755] = {.entry = {.count = 1, .reusable = false}}, SHIFT(640),
[757] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(640),
[760] = {.entry = {.count = 1, .reusable = false}}, SHIFT(258),
[762] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch, 3, 0, 0),
[764] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__concat_word_repeat1, 2, 0, 0), SHIFT_REPEAT(340),
[767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497),
[769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89),
[771] = {.entry = {.count = 1, .reusable = false}}, SHIFT(676),
[773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368),
[775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29),
[777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(202),
[779] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(610),
[782] = {.entry = {.count = 1, .reusable = false}}, SHIFT(246),
[784] = {.entry = {.count = 1, .reusable = false}}, SHIFT(203),
[786] = {.entry = {.count = 1, .reusable = false}}, SHIFT(437),
[788] = {.entry = {.count = 1, .reusable = false}}, SHIFT(224),
[790] = {.entry = {.count = 1, .reusable = false}}, SHIFT(490),
[792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514),
[794] = {.entry = {.count = 1, .reusable = false}}, SHIFT(204),
[796] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269),
[798] = {.entry = {.count = 1, .reusable = false}}, SHIFT(251),
[800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267),
[802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382),
[804] = {.entry = {.count = 1, .reusable = false}}, SHIFT(634),
[806] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0), SHIFT_REPEAT(172),
[809] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0), SHIFT_REPEAT(461),
[812] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0), SHIFT_REPEAT(375),
[815] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0), SHIFT_REPEAT(290),
[818] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_regexp_repeat1, 2, 0, 0), SHIFT_REPEAT(22),
[821] = {.entry = {.count = 1, .reusable = false}}, SHIFT(679),
[823] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(679),
[826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646),
[828] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(634),
[831] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(646),
[834] = {.entry = {.count = 1, .reusable = false}}, SHIFT(400),
[836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400),
[838] = {.entry = {.count = 1, .reusable = false}}, SHIFT(314),
[840] = {.entry = {.count = 1, .reusable = false}}, SHIFT(129),
[842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314),
[844] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__concat_word_repeat1, 3, 0, 0),
[846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__concat_word_repeat1, 3, 0, 0),
[848] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_braced_word, 3, 0, 0),
[850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200),
[852] = {.entry = {.count = 1, .reusable = false}}, SHIFT(342),
[854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342),
[856] = {.entry = {.count = 1, .reusable = false}}, SHIFT(378),
[858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378),
[860] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_braced_word, 2, 0, 0),
[862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__concat_word, 2, 0, 0),
[864] = {.entry = {.count = 1, .reusable = false}}, SHIFT(526),
[866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526),
[868] = {.entry = {.count = 1, .reusable = false}}, SHIFT(546),
[870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546),
[872] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__concat_word_repeat1, 2, 0, 0), SHIFT_REPEAT(357),
[875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__concat_word, 3, 0, 0),
[877] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_braced_word, 5, 0, 0),
[879] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_braced_word, 4, 0, 0),
[881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273),
[883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626),
[885] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__concat_word_repeat1, 2, 0, 0), SHIFT_REPEAT(382),
[888] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(626),
[891] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__word_simple, 1, 0, 0),
[893] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__word_simple, 1, 0, 0),
[895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288),
[897] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__word_simple, 2, 0, 0),
[899] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__word_simple, 2, 0, 0),
[901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299),
[903] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__word_simple_repeat1, 2, 0, 0),
[905] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__word_simple_repeat1, 2, 0, 0),
[907] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(299),
[910] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(288),
[913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277),
[915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363),
[917] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_braced_word, 5, 0, 0),
[919] = {.entry = {.count = 1, .reusable = false}}, SHIFT(492),
[921] = {.entry = {.count = 1, .reusable = false}}, SHIFT(233),
[923] = {.entry = {.count = 1, .reusable = false}}, SHIFT(389),
[925] = {.entry = {.count = 1, .reusable = false}}, SHIFT(27),
[927] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142),
[929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216),
[931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_braced_word, 2, 0, 0),
[933] = {.entry = {.count = 1, .reusable = false}}, SHIFT(423),
[935] = {.entry = {.count = 1, .reusable = false}}, SHIFT(349),
[937] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional, 4, 0, 5),
[939] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional, 4, 0, 5),
[941] = {.entry = {.count = 1, .reusable = false}}, SHIFT(167),
[943] = {.entry = {.count = 1, .reusable = false}}, SHIFT(168),
[945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(425),
[947] = {.entry = {.count = 1, .reusable = false}}, SHIFT(387),
[949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(442),
[951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518),
[953] = {.entry = {.count = 1, .reusable = false}}, SHIFT(565),
[955] = {.entry = {.count = 1, .reusable = false}}, SHIFT(356),
[957] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_braced_word, 3, 0, 0),
[959] = {.entry = {.count = 1, .reusable = false}}, SHIFT(575),
[961] = {.entry = {.count = 1, .reusable = false}}, SHIFT(230),
[963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304),
[965] = {.entry = {.count = 1, .reusable = false}}, SHIFT(388),
[967] = {.entry = {.count = 1, .reusable = false}}, SHIFT(362),
[969] = {.entry = {.count = 1, .reusable = false}}, SHIFT(391),
[971] = {.entry = {.count = 1, .reusable = false}}, SHIFT(341),
[973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453),
[975] = {.entry = {.count = 1, .reusable = false}}, SHIFT(458),
[977] = {.entry = {.count = 1, .reusable = false}}, SHIFT(393),
[979] = {.entry = {.count = 1, .reusable = false}}, SHIFT(376),
[981] = {.entry = {.count = 1, .reusable = false}}, SHIFT(367),
[983] = {.entry = {.count = 1, .reusable = false}}, SHIFT(386),
[985] = {.entry = {.count = 1, .reusable = false}}, SHIFT(41),
[987] = {.entry = {.count = 1, .reusable = false}}, SHIFT(369),
[989] = {.entry = {.count = 1, .reusable = false}}, SHIFT(42),
[991] = {.entry = {.count = 1, .reusable = false}}, SHIFT(440),
[993] = {.entry = {.count = 1, .reusable = false}}, SHIFT(371),
[995] = {.entry = {.count = 1, .reusable = false}}, SHIFT(452),
[997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional, 3, 0, 5),
[999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional, 3, 0, 5),
[1001] = {.entry = {.count = 1, .reusable = false}}, SHIFT(317),
[1003] = {.entry = {.count = 1, .reusable = false}}, SHIFT(381),
[1005] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_word_list_repeat1, 2, 0, 0),
[1007] = {.entry = {.count = 1, .reusable = false}}, SHIFT(309),
[1009] = {.entry = {.count = 1, .reusable = false}}, SHIFT(283),
[1011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358),
[1013] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_braced_word, 4, 0, 0),
[1015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional, 5, 0, 5),
[1017] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional, 5, 0, 5),
[1019] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_quoted_word_repeat1, 2, 0, 0), SHIFT_REPEAT(492),
[1022] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_quoted_word_repeat1, 2, 0, 0),
[1024] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_quoted_word_repeat1, 2, 0, 0), SHIFT_REPEAT(387),
[1027] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_quoted_word_repeat1, 2, 0, 0), SHIFT_REPEAT(27),
[1030] = {.entry = {.count = 1, .reusable = false}}, SHIFT(215),
[1032] = {.entry = {.count = 1, .reusable = false}}, SHIFT(472),
[1034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275),
[1036] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(285),
[1039] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 1, 0, 0),
[1041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 1, 0, 0),
[1043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285),
[1045] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__concat_word_repeat1, 2, 0, 0), SHIFT_REPEAT(363),
[1048] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(599),
[1051] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 3, 0, 0),
[1053] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 3, 0, 0),
[1055] = {.entry = {.count = 1, .reusable = false}}, SHIFT(618),
[1057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271),
[1059] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expr, 3, 0, 0),
[1061] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expr, 3, 0, 0),
[1063] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__id_immediate_repeat1, 2, 0, 0), SHIFT_REPEAT(618),
[1066] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expr, 1, 0, 0),
[1068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expr, 1, 0, 0),
[1070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(671),
[1072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18),
[1074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577),
[1076] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 2, 0, 0),
[1078] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 2, 0, 0),
[1080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599),
[1082] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_conditional_repeat1, 2, 0, 0),
[1084] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_conditional_repeat1, 2, 0, 0),
[1086] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_conditional_repeat1, 2, 0, 0), SHIFT_REPEAT(167),
[1089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350),
[1091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186),
[1093] = {.entry = {.count = 1, .reusable = false}}, SHIFT(160),
[1095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try, 2, 0, 0),
[1097] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try, 2, 0, 0),
[1099] = {.entry = {.count = 1, .reusable = false}}, SHIFT(598),
[1101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(171),
[1103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try, 3, 0, 0),
[1105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try, 3, 0, 0),
[1107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(705),
[1109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try, 6, 0, 0),
[1111] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try, 6, 0, 0),
[1113] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_conditional_repeat1, 2, 0, 0), SHIFT_REPEAT(186),
[1116] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2, 0, 0), SHIFT_REPEAT(543),
[1119] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2, 0, 0), SHIFT_REPEAT(694),
[1122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2, 0, 0),
[1124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629),
[1126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122),
[1128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653),
[1130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(543),
[1132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694),
[1134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428),
[1136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4),
[1138] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4),
[1140] = {.entry = {.count = 1, .reusable = false}}, SHIFT(434),
[1142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5),
[1144] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5),
[1146] = {.entry = {.count = 1, .reusable = false}}, SHIFT(280),
[1148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404),
[1150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7),
[1152] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7),
[1154] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_braced_word_repeat2, 2, 0, 0), SHIFT_REPEAT(14),
[1157] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_braced_word_repeat2, 2, 0, 0), SHIFT_REPEAT(14),
[1160] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_braced_word_repeat2, 2, 0, 0),
[1162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try, 7, 0, 0),
[1164] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try, 7, 0, 0),
[1166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(601),
[1168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225),
[1170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668),
[1172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9),
[1174] = {.entry = {.count = 1, .reusable = false}}, SHIFT(9),
[1176] = {.entry = {.count = 1, .reusable = false}}, SHIFT(515),
[1178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436),
[1180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10),
[1182] = {.entry = {.count = 1, .reusable = false}}, SHIFT(10),
[1184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664),
[1186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429),
[1188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672),
[1190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12),
[1192] = {.entry = {.count = 1, .reusable = false}}, SHIFT(12),
[1194] = {.entry = {.count = 1, .reusable = false}}, SHIFT(355),
[1196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293),
[1198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elseif, 4, 0, 5),
[1200] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elseif, 4, 0, 5),
[1202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13),
[1204] = {.entry = {.count = 1, .reusable = false}}, SHIFT(13),
[1206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(704),
[1208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173),
[1210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(675),
[1212] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(293),
[1215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8),
[1217] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8),
[1219] = {.entry = {.count = 1, .reusable = false}}, SHIFT(468),
[1221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elseif, 3, 0, 5),
[1223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elseif, 3, 0, 5),
[1225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11),
[1227] = {.entry = {.count = 1, .reusable = false}}, SHIFT(11),
[1229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(607),
[1231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405),
[1233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678),
[1235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379),
[1237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(615),
[1239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323),
[1241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(681),
[1243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try, 8, 0, 0),
[1245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try, 8, 0, 0),
[1247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623),
[1249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175),
[1251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(684),
[1253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274),
[1255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631),
[1257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34),
[1259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687),
[1261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638),
[1263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236),
[1265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690),
[1267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439),
[1269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6),
[1271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6),
[1273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680),
[1275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101),
[1277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658),
[1279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294),
[1281] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__word_simple_repeat1, 2, 0, 0), SHIFT_REPEAT(294),
[1284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134),
[1286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(706),
[1288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689),
[1290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701),
[1292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154),
[1294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700),
[1296] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__concat_word_repeat1, 2, 0, 0), SHIFT_REPEAT(350),
[1299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211),
[1301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643),
[1303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(698),
[1305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch, 3, 0, 0),
[1307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while, 3, 0, 0),
[1309] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while, 3, 0, 0),
[1311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451),
[1313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502),
[1315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 6, 0, 0),
[1317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 6, 0, 0),
[1319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 4, 0, 0),
[1321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 4, 0, 0),
[1323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else, 3, 0, 0),
[1325] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else, 3, 0, 0),
[1327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_procedure, 5, 0, 9),
[1329] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_procedure, 5, 0, 9),
[1331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_procedure, 4, 0, 6),
[1333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_procedure, 4, 0, 6),
[1335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument, 1, 0, 1),
[1337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while, 4, 0, 0),
[1339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while, 4, 0, 0),
[1341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch, 4, 0, 0),
[1343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch, 4, 0, 0),
[1345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_procedure, 5, 0, 8),
[1347] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_procedure, 5, 0, 8),
[1349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_foreach, 4, 0, 0),
[1351] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_foreach, 4, 0, 0),
[1353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397),
[1355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(462),
[1357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try, 4, 0, 0),
[1359] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try, 4, 0, 0),
[1361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally, 2, 0, 0),
[1363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally, 2, 0, 0),
[1365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try, 9, 0, 0),
[1367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try, 9, 0, 0),
[1369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_braced_word_repeat2, 2, 0, 0),
[1371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_command, 2, 0, 3),
[1373] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_command, 2, 0, 3),
[1375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expr_cmd, 2, 0, 0),
[1377] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expr_cmd, 2, 0, 0),
[1379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_procedure, 6, 0, 11),
[1381] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_procedure, 6, 0, 11),
[1383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument, 3, 0, 7),
[1385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument, 4, 0, 10),
[1387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_foreach, 5, 0, 0),
[1389] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_foreach, 5, 0, 0),
[1391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally, 3, 0, 0),
[1393] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally, 3, 0, 0),
[1395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional, 6, 0, 5),
[1397] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional, 6, 0, 5),
[1399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else, 2, 0, 0),
[1401] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else, 2, 0, 0),
[1403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace, 2, 0, 0),
[1405] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_namespace, 2, 0, 0),
[1407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3, 0, 0),
[1409] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__concat_word_repeat1, 2, 0, 0), SHIFT_REPEAT(379),
[1412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_command, 3, 0, 4),
[1414] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_command, 3, 0, 4),
[1416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76),
[1418] = {.entry = {.count = 1, .reusable = false}}, SHIFT(76),
[1420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286),
[1422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559),
[1424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464),
[1426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281),
[1428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227),
[1430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334),
[1432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408),
[1434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426),
[1436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474),
[1438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282),
[1440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410),
[1442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412),
[1444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108),
[1446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325),
[1448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74),
[1450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508),
[1452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457),
[1454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394),
[1456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(542),
[1458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228),
[1460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177),
[1462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345),
[1464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417),
[1466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476),
[1468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117),
[1470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311),
[1472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30),
[1474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44),
[1476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319),
[1478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37),
[1480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447),
[1482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238),
[1484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443),
[1486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287),
[1488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392),
[1490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422),
[1492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218),
[1494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36),
[1496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359),
[1498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330),
[1500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39),
[1502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121),
[1504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124),
[1506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703),
[1508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312),
[1510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346),
[1512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651),
[1514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683),
[1516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221),
[1518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431),
[1520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315),
[1522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630),
[1524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613),
[1526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(578),
[1528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682),
[1530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581),
[1532] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(),
[1534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(600),
[1536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611),
[1538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329),
[1540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102),
[1542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619),
[1544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506),
[1546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165),
[1548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(597),
[1550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509),
[1552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(635),
[1554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669),
[1556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641),
[1558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421),
[1560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263),
[1562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220),
[1564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87),
[1566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(659),
[1568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(572),
[1570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574),
[1572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222),
[1574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179),
[1576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(580),
[1578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140),
[1580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90),
[1582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374),
};
enum ts_external_scanner_symbol_identifiers {
ts_external_token__concat = 0,
ts_external_token__immediate = 1,
};
static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = {
[ts_external_token__concat] = sym__concat,
[ts_external_token__immediate] = sym__immediate,
};
static const bool ts_external_scanner_states[3][EXTERNAL_TOKEN_COUNT] = {
[1] = {
[ts_external_token__concat] = true,
[ts_external_token__immediate] = true,
},
[2] = {
[ts_external_token__concat] = true,
},
};
#ifdef __cplusplus
extern "C" {
#endif
void *tree_sitter_tcl_external_scanner_create(void);
void tree_sitter_tcl_external_scanner_destroy(void *);
bool tree_sitter_tcl_external_scanner_scan(void *, TSLexer *, const bool *);
unsigned tree_sitter_tcl_external_scanner_serialize(void *, char *);
void tree_sitter_tcl_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_tcl(void) {
static const TSLanguage language = {
.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,
.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,
.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 = ts_lex_modes,
.lex_fn = ts_lex,
.keyword_lex_fn = ts_lex_keywords,
.keyword_capture_token = sym_simple_word,
.external_scanner = {
&ts_external_scanner_states[0][0],
ts_external_scanner_symbol_map,
tree_sitter_tcl_external_scanner_create,
tree_sitter_tcl_external_scanner_destroy,
tree_sitter_tcl_external_scanner_scan,
tree_sitter_tcl_external_scanner_serialize,
tree_sitter_tcl_external_scanner_deserialize,
},
.primary_state_ids = ts_primary_state_ids,
};
return &language;
}
#ifdef __cplusplus
}
#endif
07070100000039000081A4000000000000000000000001672A2240000003A5000000000000000000000000000000000000003100000000tree-sitter-tcl-0+20241105.98015eb/src/scanner.c#include "tree_sitter/parser.h"
#include <wctype.h>
enum TokenType {
CONCAT,
IMMEDIATE
};
void *tree_sitter_tcl_external_scanner_create() {
return NULL;
}
bool tree_sitter_tcl_external_scanner_scan(void *payload, TSLexer *lexer,
const bool *valid_symbols) {
int32_t c = lexer->lookahead;
if (valid_symbols[IMMEDIATE] && !iswspace(c)) {
lexer->result_symbol = IMMEDIATE;
return false;
}
if (valid_symbols[CONCAT] && (
!iswspace(c) &&
c != ')' &&
c != ':' &&
c != '}' &&
c != ']')) {
lexer->result_symbol = CONCAT;
return true;
}
return false;
}
unsigned tree_sitter_tcl_external_scanner_serialize(void *payload, char *state) {
return 0;
}
void tree_sitter_tcl_external_scanner_deserialize(void *payload, const char *state, unsigned length){ }
void tree_sitter_tcl_external_scanner_destroy(void *payload) {}
0707010000003A000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000003300000000tree-sitter-tcl-0+20241105.98015eb/src/tree_sitter0707010000003B000081A4000000000000000000000001672A2240000003D9000000000000000000000000000000000000003B00000000tree-sitter-tcl-0+20241105.98015eb/src/tree_sitter/alloc.h#ifndef TREE_SITTER_ALLOC_H_
#define TREE_SITTER_ALLOC_H_
#ifdef __cplusplus
extern "C" {
#endif
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
// 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_
0707010000003C000081A4000000000000000000000001672A2240000028B4000000000000000000000000000000000000003B00000000tree-sitter-tcl-0+20241105.98015eb/src/tree_sitter/array.h#ifndef TREE_SITTER_ARRAY_H_
#define TREE_SITTER_ARRAY_H_
#ifdef __cplusplus
extern "C" {
#endif
#include "./alloc.h"
#include <assert.h>
#include <stdbool.h>
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#ifdef _MSC_VER
#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)
/// Reserve `new_capacity` elements of space in the array. If `new_capacity` is
/// less than the array's current capacity, this function has no effect.
#define array_reserve(self, new_capacity) \
_array__reserve((Array *)(self), array_elem_size(self), new_capacity)
/// Free any memory allocated for this array. Note that this does not free any
/// memory allocated for the array's contents.
#define array_delete(self) _array__delete((Array *)(self))
/// Push a new `element` onto the end of the array.
#define array_push(self, element) \
(_array__grow((Array *)(self), 1, array_elem_size(self)), \
(self)->contents[(self)->size++] = (element))
/// Increase the array's size by `count` elements.
/// New elements are zero-initialized.
#define array_grow_by(self, count) \
do { \
if ((count) == 0) break; \
_array__grow((Array *)(self), count, array_elem_size(self)); \
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, contents) \
_array__splice( \
(Array *)(self), array_elem_size(self), (self)->size, \
0, count, contents \
)
/// Remove `old_count` elements from the array starting at the given `index`. At
/// the same index, insert `new_count` new elements, reading their values from the
/// `new_contents` pointer.
#define array_splice(self, _index, old_count, new_count, new_contents) \
_array__splice( \
(Array *)(self), array_elem_size(self), _index, \
old_count, new_count, new_contents \
)
/// Insert one `element` into the array at the given `index`.
#define array_insert(self, _index, element) \
_array__splice((Array *)(self), array_elem_size(self), _index, 0, 1, &(element))
/// Remove one element from the array at the given `index`.
#define array_erase(self, _index) \
_array__erase((Array *)(self), array_elem_size(self), _index)
/// Pop the last element off the array, returning the element by value.
#define array_pop(self) ((self)->contents[--(self)->size])
/// Assign the contents of one array to another, reallocating if necessary.
#define array_assign(self, other) \
_array__assign((Array *)(self), (const Array *)(other), array_elem_size(self))
/// Swap one array with another
#define array_swap(self, other) \
_array__swap((Array *)(self), (Array *)(other))
/// 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
typedef Array(void) Array;
/// This is not what you're looking for, see `array_delete`.
static inline void _array__delete(Array *self) {
if (self->contents) {
ts_free(self->contents);
self->contents = NULL;
self->size = 0;
self->capacity = 0;
}
}
/// This is not what you're looking for, see `array_erase`.
static inline void _array__erase(Array *self, size_t element_size,
uint32_t index) {
assert(index < self->size);
char *contents = (char *)self->contents;
memmove(contents + index * element_size, contents + (index + 1) * element_size,
(self->size - index - 1) * element_size);
self->size--;
}
/// This is not what you're looking for, see `array_reserve`.
static inline void _array__reserve(Array *self, size_t element_size, uint32_t new_capacity) {
if (new_capacity > self->capacity) {
if (self->contents) {
self->contents = ts_realloc(self->contents, new_capacity * element_size);
} else {
self->contents = ts_malloc(new_capacity * element_size);
}
self->capacity = new_capacity;
}
}
/// This is not what you're looking for, see `array_assign`.
static inline void _array__assign(Array *self, const Array *other, size_t element_size) {
_array__reserve(self, element_size, other->size);
self->size = other->size;
memcpy(self->contents, other->contents, self->size * element_size);
}
/// This is not what you're looking for, see `array_swap`.
static inline void _array__swap(Array *self, Array *other) {
Array swap = *other;
*other = *self;
*self = swap;
}
/// This is not what you're looking for, see `array_push` or `array_grow_by`.
static inline void _array__grow(Array *self, uint32_t count, size_t element_size) {
uint32_t new_size = self->size + count;
if (new_size > self->capacity) {
uint32_t new_capacity = self->capacity * 2;
if (new_capacity < 8) new_capacity = 8;
if (new_capacity < new_size) new_capacity = new_size;
_array__reserve(self, element_size, new_capacity);
}
}
/// This is not what you're looking for, see `array_splice`.
static inline void _array__splice(Array *self, size_t element_size,
uint32_t index, uint32_t old_count,
uint32_t new_count, const void *elements) {
uint32_t new_size = self->size + new_count - old_count;
uint32_t old_end = index + old_count;
uint32_t new_end = index + new_count;
assert(old_end <= self->size);
_array__reserve(self, element_size, new_size);
char *contents = (char *)self->contents;
if (self->size > old_end) {
memmove(
contents + new_end * element_size,
contents + old_end * element_size,
(self->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
);
}
}
self->size += new_count - old_count;
}
/// 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(default : 4101)
#elif defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic pop
#endif
#ifdef __cplusplus
}
#endif
#endif // TREE_SITTER_ARRAY_H_
0707010000003D000081A4000000000000000000000001672A224000001B7F000000000000000000000000000000000000003C00000000tree-sitter-tcl-0+20241105.98015eb/src/tree_sitter/parser.h#ifndef TREE_SITTER_PARSER_H_
#define TREE_SITTER_PARSER_H_
#ifdef __cplusplus
extern "C" {
#endif
#include <stdbool.h>
#include <stdint.h>
#include <stdlib.h>
#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;
#endif
typedef struct {
TSFieldId field_id;
uint8_t child_index;
bool inherited;
} TSFieldMapEntry;
typedef struct {
uint16_t index;
uint16_t length;
} TSFieldMapSlice;
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 union {
TSParseAction action;
struct {
uint8_t count;
bool reusable;
} entry;
} TSParseActionEntry;
typedef struct {
int32_t start;
int32_t end;
} TSCharacterRange;
struct TSLanguage {
uint32_t 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 TSFieldMapSlice *field_map_slices;
const TSFieldMapEntry *field_map_entries;
const TSSymbolMetadata *symbol_metadata;
const TSSymbol *public_symbol_map;
const uint16_t *alias_map;
const TSSymbol *alias_sequences;
const TSLexMode *lex_modes;
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;
};
static inline bool set_contains(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;
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;
}
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_
0707010000003E000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000002800000000tree-sitter-tcl-0+20241105.98015eb/test0707010000003F000041ED000000000000000000000002672A224000000000000000000000000000000000000000000000002F00000000tree-sitter-tcl-0+20241105.98015eb/test/corpus07070100000040000081A4000000000000000000000001672A224000002412000000000000000000000000000000000000003800000000tree-sitter-tcl-0+20241105.98015eb/test/corpus/test.txt
================================================================================
Commands
================================================================================
echo "hello"
set hi "heelo"
--------------------------------------------------------------------------------
(source_file
(command
(simple_word)
(word_list
(quoted_word)))
(set
(id)
(quoted_word)))
================================================================================
Procedures
================================================================================
proc foo {arg1 arg2} {
echo "hello"
echo "word$hi \$bye word"
}
--------------------------------------------------------------------------------
(source_file
(procedure
(simple_word)
(arguments
(argument
(simple_word))
(argument
(simple_word)))
(braced_word
(command
(simple_word)
(word_list
(quoted_word)))
(command
(simple_word)
(word_list
(quoted_word
(variable_substitution
(id))
(escaped_character)))))))
================================================================================
Comments
================================================================================
# this is a comment
--------------------------------------------------------------------------------
(source_file
(comment))
================================================================================
Foreach
================================================================================
foreach a {1 2 3 4 5} {
put $i
}
--------------------------------------------------------------------------------
(source_file
(foreach
(arguments
(simple_word))
(braced_word_simple
(simple_word)
(simple_word)
(simple_word)
(simple_word)
(simple_word))
(braced_word
(command
(simple_word)
(word_list
(variable_substitution
(id)))))))
================================================================================
Conditionals
================================================================================
if $hello {
echo hi
} elseif $hello {
echo hi
} else {
echo bye
}
--------------------------------------------------------------------------------
(source_file
(conditional
(expr
(variable_substitution
(id)))
(braced_word
(command
(simple_word)
(word_list
(simple_word))))
(elseif
(expr
(variable_substitution
(id)))
(braced_word
(command
(simple_word)
(word_list
(simple_word)))))
(else
(braced_word
(command
(simple_word)
(word_list
(simple_word)))))))
================================================================================
Command substitution
================================================================================
echo [echo hello]
--------------------------------------------------------------------------------
(source_file
(command
(simple_word)
(word_list
(command_substitution
(command
(simple_word)
(word_list
(simple_word)))))))
================================================================================
Escaped string
================================================================================
echo "word$hi \$bye word"
--------------------------------------------------------------------------------
(source_file
(command
(simple_word)
(word_list
(quoted_word
(variable_substitution
(id))
(escaped_character)))))
================================================================================
Slash in string
================================================================================
set dir $build_dir/subdir
--------------------------------------------------------------------------------
(source_file
(set
(id)
(variable_substitution
(id))
(simple_word)))
================================================================================
Curly in string
================================================================================
set v $a{b}
--------------------------------------------------------------------------------
(source_file
(set
(id)
(variable_substitution
(id))
(braced_word_simple
(simple_word))))
================================================================================
Regexp
================================================================================
regexp {\d} $var m b
--------------------------------------------------------------------------------
(source_file
(regexp
(braced_word_simple
(escaped_character))
(variable_substitution
(id))
(simple_word)
(simple_word)))
================================================================================
Expr 'in'
================================================================================
if {$foo in {"basic"}} {}
if {{foo} in {basic}} {}
--------------------------------------------------------------------------------
(source_file
(conditional
(expr
(binop_expr
(variable_substitution
(id))
(braced_word_simple
(quoted_word))))
(braced_word))
(conditional
(expr
(binop_expr
(braced_word_simple
(simple_word))
(braced_word_simple
(simple_word))))
(braced_word)))
================================================================================
Expr eq and &&
================================================================================
expr {$var eq "sec" && $bar}
--------------------------------------------------------------------------------
(source_file
(expr_cmd
(expr
(binop_expr
(binop_expr
(variable_substitution
(id))
(quoted_word))
(variable_substitution
(id))))))
================================================================================
Set array
================================================================================
set foo($i) 1
--------------------------------------------------------------------------------
(source_file
(set
(id)
(array_index
(variable_substitution
(id)))
(simple_word)))
================================================================================
Namespace id
================================================================================
set a $::var
set a $::var::sub
--------------------------------------------------------------------------------
(source_file
(set (id) (variable_substitution (id)))
(set (id) (variable_substitution (id)))
)
================================================================================
Empty statement block
================================================================================
if {1} {
}
if {1} {
}
--------------------------------------------------------------------------------
(source_file
(conditional
(expr)
(braced_word))
(conditional
(expr)
(braced_word))
)
================================================================================
Command with no terminator
================================================================================
baz {foo}
baz {foo
foo}
--------------------------------------------------------------------------------
(source_file
(command
(simple_word)
(word_list
(braced_word
(command
(simple_word)))))
(command
(simple_word)
(word_list
(braced_word
(command
(simple_word))
(command
(simple_word))))))
================================================================================
Command with trailing terminator
================================================================================
baz {
aa
;
}
--------------------------------------------------------------------------------
(source_file
(command
(simple_word)
(word_list
(braced_word
(command
(simple_word))))))
================================================================================
Command with middle terminator
================================================================================
baz {
aa
;
aa
}
--------------------------------------------------------------------------------
(source_file
(command
(simple_word)
(word_list
(braced_word
(command
(simple_word))
(command
(simple_word))))))
================================================================================
Comment in namespace
================================================================================
namespace eval ::ns {
# command
}
--------------------------------------------------------------------------------
(source_file
(namespace
(word_list
(simple_word)
(simple_word)
(braced_word
(comment)))))
07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000B00000000TRAILER!!!1210 blocks