From e2b1d9b21c54a39df3a6d3c8a89fa14d6539e8e5 Mon Sep 17 00:00:00 2001 From: Mehmet Oguz Derin Date: Mon, 26 Aug 2024 20:55:09 +0900 Subject: [PATCH 1/5] Sync with spec --- .editorconfig | 39 + .gitattributes | 11 + .gitignore | 169 +- Cargo.toml | 20 +- Makefile | 113 + Package.swift | 47 + README.md | 3 + binding.gyp | 25 +- bindings/c/tree-sitter-wgsl.h | 16 + bindings/c/tree-sitter-wgsl.pc.in | 11 + bindings/go/binding.go | 13 + bindings/go/binding_test.go | 15 + bindings/go/go.mod | 5 + bindings/node/binding.cc | 36 +- bindings/node/index.d.ts | 28 + bindings/node/index.js | 18 +- bindings/python/tree_sitter_wgsl/__init__.py | 5 + bindings/python/tree_sitter_wgsl/__init__.pyi | 1 + .../__pycache__/__init__.cpython-311.pyc | Bin 0 -> 313 bytes bindings/python/tree_sitter_wgsl/binding.c | 27 + bindings/python/tree_sitter_wgsl/binding.cpp | 35 + bindings/python/tree_sitter_wgsl/py.typed | 0 bindings/rust/build.rs | 39 +- bindings/rust/lib.rs | 22 +- bindings/swift/TreeSitterWgsl/wgsl.h | 16 + grammar.js | 920 +- package-lock.json | 336 + package.json | 59 +- pyproject.toml | 29 + setup.py | 61 + src/grammar.json | 6235 +-- src/node-types.json | 1791 +- src/parser.c | 33182 ---------------- src/parser.cpp | 31959 +++++++++++++++ src/parser.o | Bin 300856 -> 0 bytes src/{scanner.cc => scanner.cpp} | 114 +- src/scanner.o | Bin 52096 -> 0 bytes src/tree_sitter/alloc.h | 54 + src/tree_sitter/array.h | 290 + src/tree_sitter/parser.h | 67 +- tree-sitter-wgsl.wasm | Bin 230464 -> 138248 bytes 41 files changed, 36252 insertions(+), 39559 deletions(-) create mode 100644 .editorconfig create mode 100644 .gitattributes create mode 100644 Makefile create mode 100644 Package.swift create mode 100644 README.md create mode 100644 bindings/c/tree-sitter-wgsl.h create mode 100644 bindings/c/tree-sitter-wgsl.pc.in create mode 100644 bindings/go/binding.go create mode 100644 bindings/go/binding_test.go create mode 100644 bindings/go/go.mod create mode 100644 bindings/node/index.d.ts create mode 100644 bindings/python/tree_sitter_wgsl/__init__.py create mode 100644 bindings/python/tree_sitter_wgsl/__init__.pyi create mode 100644 bindings/python/tree_sitter_wgsl/__pycache__/__init__.cpython-311.pyc create mode 100644 bindings/python/tree_sitter_wgsl/binding.c create mode 100644 bindings/python/tree_sitter_wgsl/binding.cpp create mode 100644 bindings/python/tree_sitter_wgsl/py.typed create mode 100644 bindings/swift/TreeSitterWgsl/wgsl.h create mode 100644 package-lock.json create mode 100644 pyproject.toml create mode 100644 setup.py delete mode 100644 src/parser.c create mode 100644 src/parser.cpp delete mode 100644 src/parser.o rename src/{scanner.cc => scanner.cpp} (90%) delete mode 100644 src/scanner.o create mode 100644 src/tree_sitter/alloc.h create mode 100644 src/tree_sitter/array.h diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..d3a8b5b --- /dev/null +++ b/.editorconfig @@ -0,0 +1,39 @@ +root = 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 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..ffb52ab --- /dev/null +++ b/.gitattributes @@ -0,0 +1,11 @@ +* 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 diff --git a/.gitignore b/.gitignore index 98b2343..27fc43f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,139 +1,38 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* - -# Diagnostic reports (https://nodejs.org/api/report.html) -report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json - -# Runtime data -pids -*.pid -*.seed -*.pid.lock - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage -*.lcov - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# Bower dependency directory (https://bower.io/) -bower_components - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release - -# Dependency directories -node_modules/ -jspm_packages/ - -# TypeScript v1 declaration files -typings/ - -# TypeScript cache -*.tsbuildinfo - -# Optional npm cache directory -.npm - -# npm Lock file -package-lock.json - -# Optional eslint cache -.eslintcache - -# Microbundle cache -.rpt2_cache/ -.rts2_cache_cjs/ -.rts2_cache_es/ -.rts2_cache_umd/ - -# Optional REPL history -.node_repl_history - -# Output of 'npm pack' -*.tgz - -# Yarn Integrity file -.yarn-integrity - -# Yarn Lock file -yarn.lock - -# dotenv environment variables file -.env -.env.test - -# parcel-bundler cache (https://parceljs.org/) -.cache - -# Next.js build output -.next - -# Nuxt.js build / generate output -.nuxt -dist - -# Gatsby files -.cache/ -# Comment in the public line in if your project uses Gatsby and *not* Next.js -# https://nextjs.org/blog/next-9-1#public-directory-support -# public - -# vuepress build output -.vuepress/dist - -# Serverless directories -.serverless/ - -# FuseBox cache -.fusebox/ - -# DynamoDB Local files -.dynamodb/ - -# TernJS port file -.tern-port - -# Generated by Cargo -# will have compiled files and executables -debug/ -target/ - -# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries -# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html +# Rust artifacts Cargo.lock +target/ -# These are backup files generated by rustfmt -**/*.rs.bk - -# Builds +# Node artifacts build/ +prebuilds/ +node_modules/ +*.tgz -# Examples -examples/ - -# TODO -Cargo.lock -node_modules -.node-version -build -*.log -/test.js -/examples/npm -package-lock.json -/target/ +# Swift artifacts +.build/ + +# Go artifacts +go.sum +_obj/ + +# Python artifacts +.venv/ +dist/ +*.egg-info +*.whl + +# C artifacts +*.a +*.so +*.so.* +*.dylib +*.dll +*.pc + +# Example dirs +/examples/*/ + +# Grammar volatiles +*.wasm +*.obj +*.o diff --git a/Cargo.toml b/Cargo.toml index a082279..bf96454 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,25 +1,23 @@ [package] name = "tree-sitter-wgsl" -description = "wgsl grammar for the tree-sitter parsing library" -version = "0.0.1" -keywords = ["incremental", "parsing", "wgsl"] +description = "WGSL grammar for tree-sitter" +version = "0.0.7" +license = "BSD-3-Clause" +readme = "README.md" +keywords = ["incremental", "parsing", "tree-sitter", "wgsl"] categories = ["parsing", "text-editors"] repository = "https://github.com/gpuweb/tree-sitter-wgsl" edition = "2021" +autoexamples = false build = "bindings/rust/build.rs" -include = [ - "bindings/rust/*", - "grammar.js", - "queries/*", - "src/*", -] +include = ["bindings/rust/*", "grammar.js", "queries/*", "src/*"] [lib] path = "bindings/rust/lib.rs" [dependencies] -tree-sitter = "~0.20.9" +tree-sitter = ">=0.22.6" [build-dependencies] -cc = "1.0" +cc = "1.0.87" diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..8381db7 --- /dev/null +++ b/Makefile @@ -0,0 +1,113 @@ +VERSION := 0.0.7 + +LANGUAGE_NAME := tree-sitter-wgsl + +# repository +SRC_DIR := src + +PARSER_REPO_URL := $(shell git -C $(SRC_DIR) remote get-url origin 2>/dev/null) + +ifeq ($(PARSER_URL),) + PARSER_URL := $(subst .git,,$(PARSER_REPO_URL)) +ifeq ($(shell echo $(PARSER_URL) | grep '^[a-z][-+.0-9a-z]*://'),) + PARSER_URL := $(subst :,/,$(PARSER_URL)) + PARSER_URL := $(subst git@,https://,$(PARSER_URL)) +endif +endif + +TS ?= tree-sitter + +# ABI versioning +SONAME_MAJOR := $(word 1,$(subst ., ,$(VERSION))) +SONAME_MINOR := $(word 2,$(subst ., ,$(VERSION))) + +# install directory layout +PREFIX ?= /usr/local +INCLUDEDIR ?= $(PREFIX)/include +LIBDIR ?= $(PREFIX)/lib +PCLIBDIR ?= $(LIBDIR)/pkgconfig + +# source/object files +PARSER := $(SRC_DIR)/parser.cpp +EXTRAS := $(filter-out $(PARSER),$(wildcard $(SRC_DIR)/*.cpp)) +OBJS := $(patsubst %.c,%.o,$(PARSER) $(EXTRAS)) + +# flags +ARFLAGS ?= rcs +override CFLAGS += -I$(SRC_DIR) -std=c17 -fPIC +override CXXFLAGS += -I$(SRC_DIR) -std=c++17 -fPIC + +# OS-specific bits +ifeq ($(OS),Windows_NT) + $(error "Windows is not supported") +else ifeq ($(shell uname),Darwin) + SOEXT = dylib + SOEXTVER_MAJOR = $(SONAME_MAJOR).dylib + SOEXTVER = $(SONAME_MAJOR).$(SONAME_MINOR).dylib + LINKSHARED := $(LINKSHARED)-dynamiclib -Wl, + ifneq ($(ADDITIONAL_LIBS),) + LINKSHARED := $(LINKSHARED)$(ADDITIONAL_LIBS), + endif + LINKSHARED := $(LINKSHARED)-install_name,$(LIBDIR)/lib$(LANGUAGE_NAME).$(SONAME_MAJOR).dylib,-rpath,@executable_path/../Frameworks +else + SOEXT = so + SOEXTVER_MAJOR = so.$(SONAME_MAJOR) + SOEXTVER = so.$(SONAME_MAJOR).$(SONAME_MINOR) + LINKSHARED := $(LINKSHARED)-shared -Wl, + ifneq ($(ADDITIONAL_LIBS),) + LINKSHARED := $(LINKSHARED)$(ADDITIONAL_LIBS) + endif + LINKSHARED := $(LINKSHARED)-soname,lib$(LANGUAGE_NAME).so.$(SONAME_MAJOR) +endif +ifneq ($(filter $(shell uname),FreeBSD NetBSD DragonFly),) + PCLIBDIR := $(PREFIX)/libdata/pkgconfig +endif + +all: lib$(LANGUAGE_NAME).a lib$(LANGUAGE_NAME).$(SOEXT) $(LANGUAGE_NAME).pc + +lib$(LANGUAGE_NAME).a: $(OBJS) + $(AR) $(ARFLAGS) $@ $^ + +lib$(LANGUAGE_NAME).$(SOEXT): $(OBJS) + $(CXX) -I$(SRC_DIR) -std=c++17 -fPIC $(LDFLAGS) $(LINKSHARED) $^ $(LDLIBS) -o $@ +ifneq ($(STRIP),) + $(STRIP) $@ +endif + +$(LANGUAGE_NAME).pc: bindings/c/$(LANGUAGE_NAME).pc.in + sed -e 's|@URL@|$(PARSER_URL)|' \ + -e 's|@VERSION@|$(VERSION)|' \ + -e 's|@LIBDIR@|$(LIBDIR)|' \ + -e 's|@INCLUDEDIR@|$(INCLUDEDIR)|' \ + -e 's|@REQUIRES@|$(REQUIRES)|' \ + -e 's|@ADDITIONAL_LIBS@|$(ADDITIONAL_LIBS)|' \ + -e 's|=$(PREFIX)|=$${prefix}|' \ + -e 's|@PREFIX@|$(PREFIX)|' $< > $@ + +$(PARSER): $(SRC_DIR)/grammar.json + $(TS) generate --no-bindings $^ + +install: all + install -d '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter '$(DESTDIR)$(PCLIBDIR)' '$(DESTDIR)$(LIBDIR)' + install -m644 bindings/c/$(LANGUAGE_NAME).h '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter/$(LANGUAGE_NAME).h + install -m644 $(LANGUAGE_NAME).pc '$(DESTDIR)$(PCLIBDIR)'/$(LANGUAGE_NAME).pc + install -m644 lib$(LANGUAGE_NAME).a '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).a + install -m755 lib$(LANGUAGE_NAME).$(SOEXT) '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXTVER) + ln -sf lib$(LANGUAGE_NAME).$(SOEXTVER) '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXTVER_MAJOR) + ln -sf lib$(LANGUAGE_NAME).$(SOEXTVER_MAJOR) '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXT) + +uninstall: + $(RM) '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).a \ + '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXTVER) \ + '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXTVER_MAJOR) \ + '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXT) \ + '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter/$(LANGUAGE_NAME).h \ + '$(DESTDIR)$(PCLIBDIR)'/$(LANGUAGE_NAME).pc + +clean: + $(RM) $(OBJS) $(LANGUAGE_NAME).pc lib$(LANGUAGE_NAME).a lib$(LANGUAGE_NAME).$(SOEXT) + +test: + $(TS) test + +.PHONY: all install uninstall clean test diff --git a/Package.swift b/Package.swift new file mode 100644 index 0000000..f9585b8 --- /dev/null +++ b/Package.swift @@ -0,0 +1,47 @@ +// swift-tools-version:5.4 +import PackageDescription + +let package = Package( + name: "TreeSitterWgsl", + products: [ + .library(name: "TreeSitterWgsl", targets: ["TreeSitterWgsl"]), + ], + dependencies: [], + targets: [ + .target(name: "TreeSitterWgsl", + 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.cpp", + "src/scanner.cpp", + ], + resources: [ + .copy("queries") + ], + publicHeadersPath: "bindings/swift", + cxxSettings: [.headerSearchPath("src")]), + ], + cxxLanguageStandard: .cxx17 +) diff --git a/README.md b/README.md new file mode 100644 index 0000000..b886405 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# `tree-sitter-wgsl` + +This repository contains a [Tree-sitter](https://tree-sitter.github.io/tree-sitter/) grammar for the [WebGPU Shading Language (WGSL)](https://gpuweb.github.io/gpuweb/wgsl/). diff --git a/binding.gyp b/binding.gyp index 3dff5b6..86423d2 100644 --- a/binding.gyp +++ b/binding.gyp @@ -2,18 +2,29 @@ "targets": [ { "target_name": "tree_sitter_wgsl_binding", + "dependencies": [ + " -#include "nan.h" +#include -using namespace v8; +typedef struct TSLanguage TSLanguage; -extern "C" TSLanguage * tree_sitter_wgsl(); +extern "C" TSLanguage *tree_sitter_wgsl(); -namespace { +// "tree-sitter", "language" hashed with BLAKE2 +const napi_type_tag LANGUAGE_TYPE_TAG = { + 0x8AF2E5212AD58ABF, 0xD5006CAD83ABBA16 +}; -NAN_METHOD(New) {} - -void Init(Local exports, Local module) { - Local tpl = Nan::New(New); - tpl->SetClassName(Nan::New("Language").ToLocalChecked()); - tpl->InstanceTemplate()->SetInternalFieldCount(1); - - Local constructor = Nan::GetFunction(tpl).ToLocalChecked(); - Local instance = constructor->NewInstance(Nan::GetCurrentContext()).ToLocalChecked(); - Nan::SetInternalFieldPointer(instance, 0, tree_sitter_wgsl()); - - Nan::Set(instance, Nan::New("name").ToLocalChecked(), Nan::New("wgsl").ToLocalChecked()); - Nan::Set(module, Nan::New("exports").ToLocalChecked(), instance); +Napi::Object Init(Napi::Env env, Napi::Object exports) { + exports["name"] = Napi::String::New(env, "wgsl"); + auto language = Napi::External::New(env, tree_sitter_wgsl()); + language.TypeTag(&LANGUAGE_TYPE_TAG); + exports["language"] = language; + return exports; } -NODE_MODULE(tree_sitter_wgsl_binding, Init) - -} // namespace +NODE_API_MODULE(tree_sitter_wgsl_binding, Init) diff --git a/bindings/node/index.d.ts b/bindings/node/index.d.ts new file mode 100644 index 0000000..efe259e --- /dev/null +++ b/bindings/node/index.d.ts @@ -0,0 +1,28 @@ +type 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; diff --git a/bindings/node/index.js b/bindings/node/index.js index 9fc358e..6657bcf 100644 --- a/bindings/node/index.js +++ b/bindings/node/index.js @@ -1,18 +1,6 @@ -try { - module.exports = require("../../build/Release/tree_sitter_wgsl_binding"); -} catch (error1) { - if (error1.code !== 'MODULE_NOT_FOUND') { - throw error1; - } - try { - module.exports = require("../../build/Debug/tree_sitter_wgsl_binding"); - } catch (error2) { - if (error2.code !== 'MODULE_NOT_FOUND') { - throw error2; - } - throw error1 - } -} +const root = require("path").join(__dirname, "..", ".."); + +module.exports = require("node-gyp-build")(root); try { module.exports.nodeTypeInfo = require("../../src/node-types.json"); diff --git a/bindings/python/tree_sitter_wgsl/__init__.py b/bindings/python/tree_sitter_wgsl/__init__.py new file mode 100644 index 0000000..8f62d08 --- /dev/null +++ b/bindings/python/tree_sitter_wgsl/__init__.py @@ -0,0 +1,5 @@ +"Wgsl grammar for tree-sitter" + +from ._binding import language + +__all__ = ["language"] diff --git a/bindings/python/tree_sitter_wgsl/__init__.pyi b/bindings/python/tree_sitter_wgsl/__init__.pyi new file mode 100644 index 0000000..5416666 --- /dev/null +++ b/bindings/python/tree_sitter_wgsl/__init__.pyi @@ -0,0 +1 @@ +def language() -> int: ... diff --git a/bindings/python/tree_sitter_wgsl/__pycache__/__init__.cpython-311.pyc b/bindings/python/tree_sitter_wgsl/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..cfcfe4e373f2e69bd0f6db5a80c3a5ecde19ff99 GIT binary patch literal 313 zcmZ3^%f$c$pEA#+g#+owAPx*LK^dQAfQ;!3DGX5zDU2yhIgGhXQA~^sDa`4NQOqeU z!3>(LRWjk}#W@P;MTxn&iA4%&`9%sPMX9N}#hE1~sYNdtfd*(Y-r~qf%u6p#OiwLh z1`7CTvfN^ik59=@j*q{^5ucQqmy(&64weFmC+6hD$FF4g406OTAN}(DqU_>=#N^as z{q%y;^3){#a-fa+P#g83x{LJ-DoZl*^YlTs$3tw72P=$^&&#}1E?4PWK&v1 literal 0 HcmV?d00001 diff --git a/bindings/python/tree_sitter_wgsl/binding.c b/bindings/python/tree_sitter_wgsl/binding.c new file mode 100644 index 0000000..3b0d4f2 --- /dev/null +++ b/bindings/python/tree_sitter_wgsl/binding.c @@ -0,0 +1,27 @@ +#include + +typedef struct TSLanguage TSLanguage; + +TSLanguage *tree_sitter_wgsl(void); + +static PyObject* _binding_language(PyObject *self, PyObject *args) { + return PyLong_FromVoidPtr(tree_sitter_wgsl()); +} + +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); +} diff --git a/bindings/python/tree_sitter_wgsl/binding.cpp b/bindings/python/tree_sitter_wgsl/binding.cpp new file mode 100644 index 0000000..8797de2 --- /dev/null +++ b/bindings/python/tree_sitter_wgsl/binding.cpp @@ -0,0 +1,35 @@ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct TSLanguage TSLanguage; + +TSLanguage *tree_sitter_wgsl(void); + +static PyObject* _binding_language(PyObject *self, PyObject *args) { + return PyLong_FromVoidPtr(tree_sitter_wgsl()); +} + +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); +} + +#ifdef __cplusplus +} +#endif diff --git a/bindings/python/tree_sitter_wgsl/py.typed b/bindings/python/tree_sitter_wgsl/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/bindings/rust/build.rs b/bindings/rust/build.rs index c6061f0..719433d 100644 --- a/bindings/rust/build.rs +++ b/bindings/rust/build.rs @@ -2,39 +2,18 @@ fn 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"); - 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: + c_config.std("c++17").include(src_dir); - /* - let scanner_path = src_dir.join("scanner.c"); - c_config.file(&scanner_path); - println!("cargo:rerun-if-changed={}", scanner_path.to_str().unwrap()); - */ + #[cfg(target_env = "msvc")] + c_config.flag("-utf-8"); - c_config.compile("parser"); + let parser_path = src_dir.join("parser.cpp"); + c_config.file(&parser_path); 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"); + let scanner_path = src_dir.join("scanner.cpp"); + c_config.file(&scanner_path); println!("cargo:rerun-if-changed={}", scanner_path.to_str().unwrap()); - */ + + c_config.compile("tree-sitter-wgsl"); } diff --git a/bindings/rust/lib.rs b/bindings/rust/lib.rs index 04ad5d4..1702c91 100644 --- a/bindings/rust/lib.rs +++ b/bindings/rust/lib.rs @@ -1,13 +1,15 @@ -//! This crate provides wgsl language support for the [tree-sitter][] parsing library. +//! This crate provides Wgsl 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 = ""; +//! let code = r#" +//! "#; //! let mut parser = tree_sitter::Parser::new(); -//! parser.set_language(tree_sitter_wgsl::language()).expect("Error loading wgsl grammar"); +//! parser.set_language(&tree_sitter_wgsl::language()).expect("Error loading Wgsl grammar"); //! let tree = parser.parse(code, None).unwrap(); +//! assert!(!tree.root_node().has_error()); //! ``` //! //! [Language]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Language.html @@ -31,14 +33,14 @@ pub fn language() -> Language { /// 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: &'static str = include_str!("../../src/node-types.json"); +pub const NODE_TYPES: &str = include_str!("../../src/node-types.json"); // Uncomment these to include any queries that this grammar contains -// pub const HIGHLIGHTS_QUERY: &'static str = include_str!("../../queries/highlights.scm"); -// pub const INJECTIONS_QUERY: &'static str = include_str!("../../queries/injections.scm"); -// pub const LOCALS_QUERY: &'static str = include_str!("../../queries/locals.scm"); -// pub const TAGS_QUERY: &'static str = include_str!("../../queries/tags.scm"); +// 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 { @@ -46,7 +48,7 @@ mod tests { fn test_can_load_grammar() { let mut parser = tree_sitter::Parser::new(); parser - .set_language(super::language()) - .expect("Error loading wgsl language"); + .set_language(&super::language()) + .expect("Error loading Wgsl grammar"); } } diff --git a/bindings/swift/TreeSitterWgsl/wgsl.h b/bindings/swift/TreeSitterWgsl/wgsl.h new file mode 100644 index 0000000..179a8e9 --- /dev/null +++ b/bindings/swift/TreeSitterWgsl/wgsl.h @@ -0,0 +1,16 @@ +#ifndef TREE_SITTER_WGSL_H_ +#define TREE_SITTER_WGSL_H_ + +typedef struct TSLanguage TSLanguage; + +#ifdef __cplusplus +extern "C" { +#endif + +const TSLanguage *tree_sitter_wgsl(void); + +#ifdef __cplusplus +} +#endif + +#endif // TREE_SITTER_WGSL_H_ diff --git a/grammar.js b/grammar.js index 5e2f1b0..3be1cf3 100644 --- a/grammar.js +++ b/grammar.js @@ -1,630 +1,298 @@ -// Copyright (C) [2023] World Wide Web Consortium, - // (Massachusetts Institute of Technology, European Research Consortium for - // Informatics and Mathematics, Keio University, Beihang). - // All Rights Reserved. - // - // This work is distributed under the W3C (R) Software License [1] in the hope - // that it will be useful, but WITHOUT ANY WARRANTY; without even the implied - // warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - // - // [1] http://www.w3.org/Consortium/Legal/copyright-software - - // **** This file is auto-generated. Do not edit. **** - - module.exports = grammar({ - name: 'wgsl', - - externals: $ => [ - $._block_comment, - $._disambiguate_template, - $._template_args_start, - $._template_args_end, - $._less_than, - $._less_than_equal, - $._shift_left, - $._shift_left_assign, - $._greater_than, - $._greater_than_equal, - $._shift_right, - $._shift_right_assign, - $._error_sentinel, - ], - - extras: $ => [ - $._comment, - $._block_comment, - $._blankspace, - ], - - inline: $ => [ - $.global_decl, - $._reserved, - ], - - // WGSL has no parsing conflicts. - conflicts: $ => [], - - word: $ => $.ident_pattern_token, - - rules: { - - translation_unit: $ => seq(optional(repeat1($.global_directive)), optional(repeat1($.global_decl))), - global_directive: $ => $.enable_directive, - global_decl: $ => choice( - token(';'), - seq($.global_variable_decl, token(';')), - seq($.global_constant_decl, token(';')), - seq($.type_alias_decl, token(';')), - $.struct_decl, - $.function_decl, - seq($.const_assert_statement, token(';')) - ), - bool_literal: $ => choice( - token('true'), - token('false') - ), - int_literal: $ => choice( - $.decimal_int_literal, - $.hex_int_literal - ), - decimal_int_literal: $ => choice( - token(/0[iu]?/), - token(/[1-9][0-9]*[iu]?/) - ), - hex_int_literal: $ => token(/0[xX][0-9a-fA-F]+[iu]?/), - float_literal: $ => choice( - $.decimal_float_literal, - $.hex_float_literal - ), - decimal_float_literal: $ => choice( - token(/0[fh]/), - token(/[1-9][0-9]*[fh]/), - token(/[0-9]*\.[0-9]+([eE][+-]?[0-9]+)?[fh]?/), - token(/[0-9]+\.[0-9]*([eE][+-]?[0-9]+)?[fh]?/), - token(/[0-9]+[eE][+-]?[0-9]+[fh]?/) - ), - hex_float_literal: $ => choice( - token(/0[xX][0-9a-fA-F]*\.[0-9a-fA-F]+([pP][+-]?[0-9]+[fh]?)?/), - token(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*([pP][+-]?[0-9]+[fh]?)?/), - token(/0[xX][0-9a-fA-F]+[pP][+-]?[0-9]+[fh]?/) - ), - literal: $ => choice( - $.int_literal, - $.float_literal, - $.bool_literal - ), - ident: $ => $.ident_pattern_token, +// Copyright (C) [2024] World Wide Web Consortium, +// (Massachusetts Institute of Technology, European Research Consortium for +// Informatics and Mathematics, Keio University, Beihang). +// All Rights Reserved. +// +// This work is distributed under the W3C (R) Software License [1] in the hope +// that it will be useful, but WITHOUT ANY WARRANTY; without even the implied +// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +// +// [1] http://www.w3.org/Consortium/Legal/copyright-software + +// **** This file is auto-generated. Do not edit. **** + +module.exports = grammar({ + name: 'wgsl', + + externals: $ => [ + $._block_comment, + $._disambiguate_template, + $._template_args_start, + $._template_args_end, + $._less_than, + $._less_than_equal, + $._shift_left, + $._shift_left_assign, + $._greater_than, + $._greater_than_equal, + $._shift_right, + $._shift_right_assign, + $._error_sentinel, + ], + + extras: $ => [ + $._comment, + $._block_comment, + $._blankspace, + ], + + inline: $ => [ + $.global_decl, + $._reserved, + ], + + // WGSL has no parsing conflicts. + conflicts: $ => [], + + word: $ => $.ident_pattern_token, + + rules: { + translation_unit: $ => seq(repeat($.global_directive), repeat($.global_decl)), + + global_directive: $ => choice($.diagnostic_directive, $.enable_directive, $.requires_directive), + + global_decl: $ => choice(';', seq($.global_variable_decl, ';'), seq($.global_value_decl, ';'), seq($.type_alias_decl, ';'), $.struct_decl, $.function_decl, seq($.const_assert_statement, ';')), + + bool_literal: $ => choice('true', 'false'), + + int_literal: $ => choice($.decimal_int_literal, $.hex_int_literal), + + decimal_int_literal: $ => choice(/0[iu]?/, /[1-9][0-9]*[iu]?/), + + hex_int_literal: $ => /0[xX][0-9a-fA-F]+[iu]?/, + + float_literal: $ => choice($.decimal_float_literal, $.hex_float_literal), + + decimal_float_literal: $ => choice(/0[fh]/, /[1-9][0-9]*[fh]/, /[0-9]*\.[0-9]+([eE][+-]?[0-9]+)?[fh]?/, /[0-9]+\.[0-9]*([eE][+-]?[0-9]+)?[fh]?/, /[0-9]+[eE][+-]?[0-9]+[fh]?/), + + hex_float_literal: $ => choice(/0[xX][0-9a-fA-F]*\.[0-9a-fA-F]+([pP][+-]?[0-9]+[fh]?)?/, /0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*([pP][+-]?[0-9]+[fh]?)?/, /0[xX][0-9a-fA-F]+[pP][+-]?[0-9]+[fh]?/), + + diagnostic_directive: $ => seq('diagnostic', $.diagnostic_control, ';'), + + literal: $ => choice($.int_literal, $.float_literal, $.bool_literal), + + ident: $ => seq($.ident_pattern_token, $._disambiguate_template), + member_ident: $ => $.ident_pattern_token, - attribute: $ => choice( - seq(token('@'), token('align'), token('('), $.expression, $.attrib_end), - seq(token('@'), token('binding'), token('('), $.expression, $.attrib_end), - seq(token('@'), token('builtin'), token('('), $.builtin_value_name, $.attrib_end), - seq(token('@'), token('const')), - seq(token('@'), token('group'), token('('), $.expression, $.attrib_end), - seq(token('@'), token('id'), token('('), $.expression, $.attrib_end), - seq(token('@'), token('interpolate'), token('('), $.interpolation_type_name, $.attrib_end), - seq(token('@'), token('interpolate'), token('('), $.interpolation_type_name, token(','), $.interpolation_sample_name, $.attrib_end), - seq(token('@'), token('invariant')), - seq(token('@'), token('location'), token('('), $.expression, $.attrib_end), - seq(token('@'), token('size'), token('('), $.expression, $.attrib_end), - seq(token('@'), token('workgroup_size'), token('('), $.expression, $.attrib_end), - seq(token('@'), token('workgroup_size'), token('('), $.expression, token(','), $.expression, $.attrib_end), - seq(token('@'), token('workgroup_size'), token('('), $.expression, token(','), $.expression, token(','), $.expression, $.attrib_end), - seq(token('@'), token('vertex')), - seq(token('@'), token('fragment')), - seq(token('@'), token('compute')) - ), - attrib_end: $ => seq(optional(token(',')), token(')')), - array_type_specifier: $ => seq(token('array'), $._disambiguate_template, $._template_args_start, $.type_specifier, optional(seq(token(','), $.element_count_expression)), $._template_args_end), - element_count_expression: $ => choice( - $.additive_expression, - $.bitwise_expression - ), - struct_decl: $ => seq(token('struct'), $.ident, $.struct_body_decl), - struct_body_decl: $ => seq(token('{'), $.struct_member, optional(repeat1(seq(token(','), $.struct_member))), optional(token(',')), token('}')), - struct_member: $ => seq(optional(repeat1($.attribute)), $.member_ident, token(':'), $.type_specifier), - texture_and_sampler_types: $ => choice( - $.sampler_type, - $.depth_texture_type, - seq($.sampled_texture_type, $._disambiguate_template, $._template_args_start, $.type_specifier, $._template_args_end), - seq($.multisampled_texture_type, $._disambiguate_template, $._template_args_start, $.type_specifier, $._template_args_end), - seq($.storage_texture_type, $._disambiguate_template, $._template_args_start, $.texel_format, token(','), $.access_mode, $._template_args_end) - ), - sampler_type: $ => choice( - token('sampler'), - token('sampler_comparison') - ), - sampled_texture_type: $ => choice( - token('texture_1d'), - token('texture_2d'), - token('texture_2d_array'), - token('texture_3d'), - token('texture_cube'), - token('texture_cube_array') - ), - multisampled_texture_type: $ => token('texture_multisampled_2d'), - storage_texture_type: $ => choice( - token('texture_storage_1d'), - token('texture_storage_2d'), - token('texture_storage_2d_array'), - token('texture_storage_3d') - ), - depth_texture_type: $ => choice( - token('texture_depth_2d'), - token('texture_depth_2d_array'), - token('texture_depth_cube'), - token('texture_depth_cube_array'), - token('texture_depth_multisampled_2d') - ), - type_alias_decl: $ => seq(token('alias'), $.ident, token('='), $.type_specifier), - type_specifier: $ => choice( - $.ident, - $.type_specifier_without_ident - ), - type_specifier_without_ident: $ => choice( - token('bool'), - token('f32'), - token('f16'), - token('i32'), - token('u32'), - seq($.vec_prefix, $._disambiguate_template, $._template_args_start, $.type_specifier, $._template_args_end), - seq($.mat_prefix, $._disambiguate_template, $._template_args_start, $.type_specifier, $._template_args_end), - seq(token('ptr'), $._disambiguate_template, $._template_args_start, $.address_space, token(','), $.type_specifier, optional(seq(token(','), $.access_mode)), $._template_args_end), - $.array_type_specifier, - seq(token('atomic'), $._disambiguate_template, $._template_args_start, $.type_specifier, $._template_args_end), - $.texture_and_sampler_types - ), - vec_prefix: $ => choice( - token('vec2'), - token('vec3'), - token('vec4') - ), - mat_prefix: $ => choice( - token('mat2x2'), - token('mat2x3'), - token('mat2x4'), - token('mat3x2'), - token('mat3x3'), - token('mat3x4'), - token('mat4x2'), - token('mat4x3'), - token('mat4x4') - ), - variable_statement: $ => choice( - $.variable_decl, - seq($.variable_decl, token('='), $.expression), - seq(token('let'), $.optionally_typed_ident, token('='), $.expression), - seq(token('const'), $.optionally_typed_ident, token('='), $.expression) - ), - variable_decl: $ => seq(token('var'), $._disambiguate_template, optional($.variable_qualifier), $.optionally_typed_ident), - optionally_typed_ident: $ => seq($.ident, optional(seq(token(':'), $.type_specifier))), - variable_qualifier: $ => seq($._template_args_start, $.address_space, optional(seq(token(','), $.access_mode)), $._template_args_end), - global_variable_decl: $ => seq(optional(repeat1($.attribute)), $.variable_decl, optional(seq(token('='), $.expression))), - global_constant_decl: $ => choice( - seq(token('const'), $.optionally_typed_ident, token('='), $.expression), - seq(optional(repeat1($.attribute)), token('override'), $.optionally_typed_ident, optional(seq(token('='), $.expression))) - ), - primary_expression: $ => choice( - $.ident, - $.call_expression, - $.literal, - $.paren_expression, - seq(token('bitcast'), $._disambiguate_template, $._template_args_start, $.type_specifier, $._template_args_end, $.paren_expression) - ), + + diagnostic_name_token: $ => $.ident_pattern_token, + + diagnostic_rule_name: $ => choice($.diagnostic_name_token, seq($.diagnostic_name_token, '.', $.diagnostic_name_token)), + + template_list: $ => seq($._template_args_start, $.template_arg_comma_list, $._template_args_end), + + template_arg_comma_list: $ => seq($.template_arg_expression, repeat(seq(',', $.template_arg_expression)), optional(',')), + + template_arg_expression: $ => $.expression, + + align_attr: $ => seq('@', 'align', '(', $.expression, optional(','), ')'), + + binding_attr: $ => seq('@', 'binding', '(', $.expression, optional(','), ')'), + + blend_src_attr: $ => seq('@', 'blend_src', '(', $.expression, optional(','), ')'), + + builtin_attr: $ => seq('@', 'builtin', '(', $.builtin_value_name, optional(','), ')'), + + builtin_value_name: $ => $.ident_pattern_token, + + const_attr: $ => seq('@', 'const'), + + diagnostic_attr: $ => seq('@', 'diagnostic', $.diagnostic_control), + + group_attr: $ => seq('@', 'group', '(', $.expression, optional(','), ')'), + + id_attr: $ => seq('@', 'id', '(', $.expression, optional(','), ')'), + + interpolate_attr: $ => choice(seq('@', 'interpolate', '(', $.interpolate_type_name, optional(','), ')'), seq('@', 'interpolate', '(', $.interpolate_type_name, ',', $.interpolate_sampling_name, optional(','), ')')), + + interpolate_type_name: $ => $.ident_pattern_token, + + interpolate_sampling_name: $ => $.ident_pattern_token, + + invariant_attr: $ => seq('@', 'invariant'), + + location_attr: $ => seq('@', 'location', '(', $.expression, optional(','), ')'), + + must_use_attr: $ => seq('@', 'must_use'), + + size_attr: $ => seq('@', 'size', '(', $.expression, optional(','), ')'), + + workgroup_size_attr: $ => choice(seq('@', 'workgroup_size', '(', $.expression, optional(','), ')'), seq('@', 'workgroup_size', '(', $.expression, ',', $.expression, optional(','), ')'), seq('@', 'workgroup_size', '(', $.expression, ',', $.expression, ',', $.expression, optional(','), ')')), + + vertex_attr: $ => seq('@', 'vertex'), + + fragment_attr: $ => seq('@', 'fragment'), + + compute_attr: $ => seq('@', 'compute'), + + attribute: $ => choice(seq('@', $.ident_pattern_token, optional($.argument_expression_list)), $.align_attr, $.binding_attr, $.blend_src_attr, $.builtin_attr, $.const_attr, $.diagnostic_attr, $.group_attr, $.id_attr, $.interpolate_attr, $.invariant_attr, $.location_attr, $.must_use_attr, $.size_attr, $.workgroup_size_attr, $.vertex_attr, $.fragment_attr, $.compute_attr), + + diagnostic_control: $ => seq('(', $.severity_control_name, ',', $.diagnostic_rule_name, optional(','), ')'), + + struct_decl: $ => seq('struct', $.ident, $.struct_body_decl), + + struct_body_decl: $ => seq('{', $.struct_member, repeat(seq(',', $.struct_member)), optional(','), '}'), + + struct_member: $ => seq(repeat($.attribute), $.member_ident, ':', $.type_specifier), + + type_alias_decl: $ => seq('alias', $.ident, '=', $.type_specifier), + + type_specifier: $ => $.template_elaborated_ident, + + template_elaborated_ident: $ => seq($.ident, $._disambiguate_template, optional($.template_list)), + + variable_or_value_statement: $ => choice($.variable_decl, seq($.variable_decl, '=', $.expression), seq('let', $.optionally_typed_ident, '=', $.expression), seq('const', $.optionally_typed_ident, '=', $.expression)), + + variable_decl: $ => seq('var', $._disambiguate_template, optional($.template_list), $.optionally_typed_ident), + + optionally_typed_ident: $ => seq($.ident, optional(seq(':', $.type_specifier))), + + global_variable_decl: $ => seq(repeat($.attribute), $.variable_decl, optional(seq('=', $.expression))), + + global_value_decl: $ => choice(seq('const', $.optionally_typed_ident, '=', $.expression), seq(repeat($.attribute), 'override', $.optionally_typed_ident, optional(seq('=', $.expression)))), + + primary_expression: $ => choice($.template_elaborated_ident, $.call_expression, $.literal, $.paren_expression), + call_expression: $ => $.call_phrase, - call_phrase: $ => seq($.callable, $.argument_expression_list), - callable: $ => choice( - $.ident, - $.type_specifier_without_ident, - seq($.vec_prefix, $._disambiguate_template), - seq($.mat_prefix, $._disambiguate_template), - seq(token('array'), $._disambiguate_template) - ), - paren_expression: $ => seq(token('('), $.expression, token(')')), - argument_expression_list: $ => seq(token('('), optional($.expression_comma_list), token(')')), - expression_comma_list: $ => seq($.expression, optional(repeat1(seq(token(','), $.expression))), optional(token(','))), - component_or_swizzle_specifier: $ => choice( - seq(token('['), $.expression, token(']'), optional($.component_or_swizzle_specifier)), - seq(token('.'), $.member_ident, optional($.component_or_swizzle_specifier)), - seq(token('.'), $.swizzle_name, optional($.component_or_swizzle_specifier)) - ), - unary_expression: $ => choice( - $.singular_expression, - seq(token('-'), $.unary_expression), - seq(token('!'), $.unary_expression), - seq(token('~'), $.unary_expression), - seq(token('*'), $.unary_expression), - seq(token('&'), $.unary_expression) - ), + + call_phrase: $ => seq($.template_elaborated_ident, $.argument_expression_list), + + paren_expression: $ => seq('(', $.expression, ')'), + + argument_expression_list: $ => seq('(', optional($.expression_comma_list), ')'), + + expression_comma_list: $ => seq($.expression, repeat(seq(',', $.expression)), optional(',')), + + component_or_swizzle_specifier: $ => choice(seq('[', $.expression, ']', optional($.component_or_swizzle_specifier)), seq('.', $.member_ident, optional($.component_or_swizzle_specifier)), seq('.', $.swizzle_name, optional($.component_or_swizzle_specifier))), + + unary_expression: $ => choice($.singular_expression, seq('-', $.unary_expression), seq('!', $.unary_expression), seq('~', $.unary_expression), seq('*', $.unary_expression), seq('&', $.unary_expression)), + singular_expression: $ => seq($.primary_expression, optional($.component_or_swizzle_specifier)), - lhs_expression: $ => choice( - seq($.core_lhs_expression, optional($.component_or_swizzle_specifier)), - seq(token('*'), $.lhs_expression), - seq(token('&'), $.lhs_expression) - ), - core_lhs_expression: $ => choice( - $.ident, - seq(token('('), $.lhs_expression, token(')')) - ), - multiplicative_expression: $ => choice( - $.unary_expression, - seq($.multiplicative_expression, $.multiplicative_operator, $.unary_expression) - ), - multiplicative_operator: $ => choice( - token('*'), - token('/'), - token('%') - ), - additive_expression: $ => choice( - $.multiplicative_expression, - seq($.additive_expression, $.additive_operator, $.multiplicative_expression) - ), - additive_operator: $ => choice( - token('+'), - token('-') - ), - shift_expression: $ => choice( - $.additive_expression, - seq($.unary_expression, $._shift_left, $.unary_expression), - seq($.unary_expression, $._shift_right, $.unary_expression) - ), - relational_expression: $ => choice( - $.shift_expression, - seq($.shift_expression, $._less_than, $.shift_expression), - seq($.shift_expression, $._greater_than, $.shift_expression), - seq($.shift_expression, $._less_than_equal, $.shift_expression), - seq($.shift_expression, $._greater_than_equal, $.shift_expression), - seq($.shift_expression, token('=='), $.shift_expression), - seq($.shift_expression, token('!='), $.shift_expression) - ), - short_circuit_and_expression: $ => choice( - $.relational_expression, - seq($.short_circuit_and_expression, token('&&'), $.relational_expression) - ), - short_circuit_or_expression: $ => choice( - $.relational_expression, - seq($.short_circuit_or_expression, token('||'), $.relational_expression) - ), - binary_or_expression: $ => choice( - $.unary_expression, - seq($.binary_or_expression, token('|'), $.unary_expression) - ), - binary_and_expression: $ => choice( - $.unary_expression, - seq($.binary_and_expression, token('&'), $.unary_expression) - ), - binary_xor_expression: $ => choice( - $.unary_expression, - seq($.binary_xor_expression, token('^'), $.unary_expression) - ), - bitwise_expression: $ => choice( - seq($.binary_and_expression, token('&'), $.unary_expression), - seq($.binary_or_expression, token('|'), $.unary_expression), - seq($.binary_xor_expression, token('^'), $.unary_expression) - ), - expression: $ => choice( - $.relational_expression, - seq($.short_circuit_or_expression, token('||'), $.relational_expression), - seq($.short_circuit_and_expression, token('&&'), $.relational_expression), - $.bitwise_expression - ), - compound_statement: $ => seq(token('{'), optional(repeat1($.statement)), token('}')), - assignment_statement: $ => choice( - seq($.lhs_expression, choice(token('='), $.compound_assignment_operator), $.expression), - seq(token('_'), token('='), $.expression) - ), - compound_assignment_operator: $ => choice( - token('+='), - token('-='), - token('*='), - token('/='), - token('%='), - token('&='), - token('|='), - token('^='), - $._shift_right_assign, - $._shift_left_assign - ), - increment_statement: $ => seq($.lhs_expression, token('++')), - decrement_statement: $ => seq($.lhs_expression, token('--')), - if_statement: $ => seq($.if_clause, optional(repeat1($.else_if_clause)), optional($.else_clause)), - if_clause: $ => seq(token('if'), $.expression, $.compound_statement), - else_if_clause: $ => seq(token('else'), token('if'), $.expression, $.compound_statement), - else_clause: $ => seq(token('else'), $.compound_statement), - switch_statement: $ => seq(token('switch'), $.expression, token('{'), repeat1($.switch_body), token('}')), - switch_body: $ => choice( - $.case_clause, - $.default_alone_clause - ), - case_clause: $ => seq(token('case'), $.case_selectors, optional(token(':')), $.compound_statement), - default_alone_clause: $ => seq(token('default'), optional(token(':')), $.compound_statement), - case_selectors: $ => seq($.case_selector, optional(repeat1(seq(token(','), $.case_selector))), optional(token(','))), - case_selector: $ => choice( - token('default'), - $.expression - ), - loop_statement: $ => seq(token('loop'), token('{'), optional(repeat1($.statement)), optional($.continuing_statement), token('}')), - for_statement: $ => seq(token('for'), token('('), $.for_header, token(')'), $.compound_statement), - for_header: $ => seq(optional($.for_init), token(';'), optional($.expression), token(';'), optional($.for_update)), - for_init: $ => choice( - $.variable_statement, - $.variable_updating_statement, - $.func_call_statement - ), - for_update: $ => choice( - $.variable_updating_statement, - $.func_call_statement - ), - while_statement: $ => seq(token('while'), $.expression, $.compound_statement), - break_statement: $ => token('break'), - break_if_statement: $ => seq(token('break'), token('if'), $.expression, token(';')), - continue_statement: $ => token('continue'), - continuing_statement: $ => seq(token('continuing'), $.continuing_compound_statement), - continuing_compound_statement: $ => seq(token('{'), optional(repeat1($.statement)), optional($.break_if_statement), token('}')), - return_statement: $ => seq(token('return'), optional($.expression)), + + lhs_expression: $ => choice(seq($.core_lhs_expression, optional($.component_or_swizzle_specifier)), seq('*', $.lhs_expression), seq('&', $.lhs_expression)), + + core_lhs_expression: $ => choice(seq($.ident, $._disambiguate_template), seq('(', $.lhs_expression, ')')), + + multiplicative_expression: $ => choice($.unary_expression, seq($.multiplicative_expression, $.multiplicative_operator, $.unary_expression)), + + multiplicative_operator: $ => choice('*', '/', '%'), + + additive_expression: $ => choice($.multiplicative_expression, seq($.additive_expression, $.additive_operator, $.multiplicative_expression)), + + additive_operator: $ => choice('+', '-'), + + shift_expression: $ => choice($.additive_expression, seq($.unary_expression, $._shift_left, $.unary_expression), seq($.unary_expression, $._shift_right, $.unary_expression)), + + relational_expression: $ => choice($.shift_expression, seq($.shift_expression, $._less_than, $.shift_expression), seq($.shift_expression, $._greater_than, $.shift_expression), seq($.shift_expression, $._less_than_equal, $.shift_expression), seq($.shift_expression, $._greater_than_equal, $.shift_expression), seq($.shift_expression, '==', $.shift_expression), seq($.shift_expression, '!=', $.shift_expression)), + + short_circuit_and_expression: $ => choice($.relational_expression, seq($.short_circuit_and_expression, '&&', $.relational_expression)), + + short_circuit_or_expression: $ => choice($.relational_expression, seq($.short_circuit_or_expression, '||', $.relational_expression)), + + binary_or_expression: $ => choice($.unary_expression, seq($.binary_or_expression, '|', $.unary_expression)), + + binary_and_expression: $ => choice($.unary_expression, seq($.binary_and_expression, '&', $.unary_expression)), + + binary_xor_expression: $ => choice($.unary_expression, seq($.binary_xor_expression, '^', $.unary_expression)), + + bitwise_expression: $ => choice(seq($.binary_and_expression, '&', $.unary_expression), seq($.binary_or_expression, '|', $.unary_expression), seq($.binary_xor_expression, '^', $.unary_expression)), + + expression: $ => choice($.relational_expression, seq($.short_circuit_or_expression, '||', $.relational_expression), seq($.short_circuit_and_expression, '&&', $.relational_expression), $.bitwise_expression), + + compound_statement: $ => seq(repeat($.attribute), '{', repeat($.statement), '}'), + + assignment_statement: $ => choice(seq($.lhs_expression, choice('=', $.compound_assignment_operator), $.expression), seq('_', '=', $.expression)), + + compound_assignment_operator: $ => choice('+=', '-=', '*=', '/=', '%=', '&=', '|=', '^=', $._shift_right_assign, $._shift_left_assign), + + increment_statement: $ => seq($.lhs_expression, '++'), + + decrement_statement: $ => seq($.lhs_expression, '--'), + + if_statement: $ => seq(repeat($.attribute), $.if_clause, repeat($.else_if_clause), optional($.else_clause)), + + if_clause: $ => seq('if', $.expression, $.compound_statement), + + else_if_clause: $ => seq('else', 'if', $.expression, $.compound_statement), + + else_clause: $ => seq('else', $.compound_statement), + + switch_statement: $ => seq(repeat($.attribute), 'switch', $.expression, $.switch_body), + + switch_body: $ => seq(repeat($.attribute), '{', repeat1($.switch_clause), '}'), + + switch_clause: $ => choice($.case_clause, $.default_alone_clause), + + case_clause: $ => seq('case', $.case_selectors, optional(':'), $.compound_statement), + + default_alone_clause: $ => seq('default', optional(':'), $.compound_statement), + + case_selectors: $ => seq($.case_selector, repeat(seq(',', $.case_selector)), optional(',')), + + case_selector: $ => choice('default', $.expression), + + loop_statement: $ => seq(repeat($.attribute), 'loop', repeat($.attribute), '{', repeat($.statement), optional($.continuing_statement), '}'), + + for_statement: $ => seq(repeat($.attribute), 'for', '(', $.for_header, ')', $.compound_statement), + + for_header: $ => seq(optional($.for_init), ';', optional($.expression), ';', optional($.for_update)), + + for_init: $ => choice($.variable_or_value_statement, $.variable_updating_statement, $.func_call_statement), + + for_update: $ => choice($.variable_updating_statement, $.func_call_statement), + + while_statement: $ => seq(repeat($.attribute), 'while', $.expression, $.compound_statement), + + break_statement: $ => 'break', + + break_if_statement: $ => seq('break', 'if', $.expression, ';'), + + continue_statement: $ => 'continue', + + continuing_statement: $ => seq('continuing', $.continuing_compound_statement), + + continuing_compound_statement: $ => seq(repeat($.attribute), '{', repeat($.statement), optional($.break_if_statement), '}'), + + return_statement: $ => seq('return', optional($.expression)), + func_call_statement: $ => $.call_phrase, - const_assert_statement: $ => seq(token('const_assert'), $.expression), - statement: $ => choice( - token(';'), - seq($.return_statement, token(';')), - $.if_statement, - $.switch_statement, - $.loop_statement, - $.for_statement, - $.while_statement, - seq($.func_call_statement, token(';')), - seq($.variable_statement, token(';')), - seq($.break_statement, token(';')), - seq($.continue_statement, token(';')), - seq(token('discard'), token(';')), - seq($.variable_updating_statement, token(';')), - $.compound_statement, - seq($.const_assert_statement, token(';')) - ), - variable_updating_statement: $ => choice( - $.assignment_statement, - $.increment_statement, - $.decrement_statement - ), - function_decl: $ => seq(optional(repeat1($.attribute)), $.function_header, $.compound_statement), - function_header: $ => seq(token('fn'), $.ident, token('('), optional($.param_list), token(')'), optional(seq(token('->'), optional(repeat1($.attribute)), $.type_specifier))), - param_list: $ => seq($.param, optional(repeat1(seq(token(','), $.param))), optional(token(','))), - param: $ => seq(optional(repeat1($.attribute)), $.ident, token(':'), $.type_specifier), - enable_directive: $ => seq(token('enable'), $.extension_name, token(';')), - ident_pattern_token: $ => token(/([_\p{XID_Start}][\p{XID_Continue}]+)|([\p{XID_Start}])/uy), - interpolation_type_name: $ => choice( - token('perspective'), - token('linear'), - token('flat') - ), - interpolation_sample_name: $ => choice( - token('center'), - token('centroid'), - token('sample') - ), - builtin_value_name: $ => choice( - token('vertex_index'), - token('instance_index'), - token('position'), - token('front_facing'), - token('frag_depth'), - token('local_invocation_id'), - token('local_invocation_index'), - token('global_invocation_id'), - token('workgroup_id'), - token('num_workgroups'), - token('sample_index'), - token('sample_mask') - ), - access_mode: $ => choice( - token('read'), - token('write'), - token('read_write') - ), - address_space: $ => choice( - token('function'), - token('private'), - token('workgroup'), - token('uniform'), - token('storage') - ), - texel_format: $ => choice( - token('rgba8unorm'), - token('rgba8snorm'), - token('rgba8uint'), - token('rgba8sint'), - token('rgba16uint'), - token('rgba16sint'), - token('rgba16float'), - token('r32uint'), - token('r32sint'), - token('r32float'), - token('rg32uint'), - token('rg32sint'), - token('rg32float'), - token('rgba32uint'), - token('rgba32sint'), - token('rgba32float'), - token('bgra8unorm') - ), - extension_name: $ => token('f16'), - swizzle_name: $ => choice( - token('/[rgba]/'), - token('/[rgba][rgba]/'), - token('/[rgba][rgba][rgba]/'), - token('/[rgba][rgba][rgba][rgba]/'), - token('/[xyzw]/'), - token('/[xyzw][xyzw]/'), - token('/[xyzw][xyzw][xyzw]/'), - token('/[xyzw][xyzw][xyzw][xyzw]/') - ), - _reserved: $ => choice( - token('CompileShader'), - token('ComputeShader'), - token('DomainShader'), - token('GeometryShader'), - token('Hullshader'), - token('NULL'), - token('Self'), - token('abstract'), - token('active'), - token('alignas'), - token('alignof'), - token('as'), - token('asm'), - token('asm_fragment'), - token('async'), - token('attribute'), - token('auto'), - token('await'), - token('become'), - token('bf16'), - token('binding_array'), - token('cast'), - token('catch'), - token('class'), - token('co_await'), - token('co_return'), - token('co_yield'), - token('coherent'), - token('column_major'), - token('common'), - token('compile'), - token('compile_fragment'), - token('concept'), - token('const_cast'), - token('consteval'), - token('constexpr'), - token('constinit'), - token('crate'), - token('debugger'), - token('decltype'), - token('delete'), - token('demote'), - token('demote_to_helper'), - token('do'), - token('dynamic_cast'), - token('enum'), - token('explicit'), - token('export'), - token('extends'), - token('extern'), - token('external'), - token('f64'), - token('fallthrough'), - token('filter'), - token('final'), - token('finally'), - token('friend'), - token('from'), - token('fxgroup'), - token('get'), - token('goto'), - token('groupshared'), - token('handle'), - token('highp'), - token('i16'), - token('i64'), - token('i8'), - token('impl'), - token('implements'), - token('import'), - token('inline'), - token('inout'), - token('instanceof'), - token('interface'), - token('layout'), - token('lowp'), - token('macro'), - token('macro_rules'), - token('match'), - token('mediump'), - token('meta'), - token('mod'), - token('module'), - token('move'), - token('mut'), - token('mutable'), - token('namespace'), - token('new'), - token('nil'), - token('noexcept'), - token('noinline'), - token('nointerpolation'), - token('noperspective'), - token('null'), - token('nullptr'), - token('of'), - token('operator'), - token('package'), - token('packoffset'), - token('partition'), - token('pass'), - token('patch'), - token('pixelfragment'), - token('precise'), - token('precision'), - token('premerge'), - token('priv'), - token('protected'), - token('pub'), - token('public'), - token('quat'), - token('readonly'), - token('ref'), - token('regardless'), - token('register'), - token('reinterpret_cast'), - token('requires'), - token('resource'), - token('restrict'), - token('self'), - token('set'), - token('shared'), - token('signed'), - token('sizeof'), - token('smooth'), - token('snorm'), - token('static'), - token('static_assert'), - token('static_cast'), - token('std'), - token('subroutine'), - token('super'), - token('target'), - token('template'), - token('this'), - token('thread_local'), - token('throw'), - token('trait'), - token('try'), - token('type'), - token('typedef'), - token('typeid'), - token('typename'), - token('typeof'), - token('u16'), - token('u64'), - token('u8'), - token('union'), - token('unless'), - token('unorm'), - token('unsafe'), - token('unsized'), - token('use'), - token('using'), - token('varying'), - token('virtual'), - token('volatile'), - token('wgsl'), - token('where'), - token('with'), - token('writeonly'), - token('yield') - ), - ident: $ => $.ident_pattern_token, - _comment: $ => token(/\/\/.*/), - _blankspace: $ => token(/[\u0020\u0009\u000a\u000b\u000c\u000d\u0085\u200e\u200f\u2028\u2029]/uy) - }, - }); - + + const_assert_statement: $ => seq('const_assert', $.expression), + + statement: $ => choice(';', seq($.return_statement, ';'), $.if_statement, $.switch_statement, $.loop_statement, $.for_statement, $.while_statement, seq($.func_call_statement, ';'), seq($.variable_or_value_statement, ';'), seq($.break_statement, ';'), seq($.continue_statement, ';'), seq('discard', ';'), seq($.variable_updating_statement, ';'), $.compound_statement, seq($.const_assert_statement, ';')), + + variable_updating_statement: $ => choice($.assignment_statement, $.increment_statement, $.decrement_statement), + + function_decl: $ => seq(repeat($.attribute), $.function_header, $.compound_statement), + + function_header: $ => seq('fn', $.ident, '(', optional($.param_list), ')', optional(seq('->', repeat($.attribute), $.template_elaborated_ident))), + + param_list: $ => seq($.param, repeat(seq(',', $.param)), optional(',')), + + param: $ => seq(repeat($.attribute), $.ident, ':', $.type_specifier), + + enable_directive: $ => seq('enable', $.enable_extension_list, ';'), + + enable_extension_list: $ => seq($.enable_extension_name, repeat(seq(',', $.enable_extension_name)), optional(',')), + + requires_directive: $ => seq('requires', $.software_extension_list, ';'), + + software_extension_list: $ => seq($.software_extension_name, repeat(seq(',', $.software_extension_name)), optional(',')), + + enable_extension_name: $ => $.ident_pattern_token, + + software_extension_name: $ => $.ident_pattern_token, + + ident_pattern_token: $ => /([_\p{XID_Start}][\p{XID_Continue}]+)|([\p{XID_Start}])/u, + + severity_control_name: $ => $.ident_pattern_token, + + swizzle_name: $ => choice(/[rgba]/, /[rgba][rgba]/, /[rgba][rgba][rgba]/, /[rgba][rgba][rgba][rgba]/, /[xyzw]/, /[xyzw][xyzw]/, /[xyzw][xyzw][xyzw]/, /[xyzw][xyzw][xyzw][xyzw]/), + + ident: $ => seq($.ident_pattern_token, $._disambiguate_template), + + _comment: $ => /\/\/.*/, + + _blankspace: $ => /[\u0020\u0009\u000a\u000b\u000c\u000d\u0085\u200e\u200f\u2028\u2029]/u + } +}) diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..74020d6 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,336 @@ +{ + "name": "tree-sitter-wgsl", + "version": "0.0.7", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "tree-sitter-wgsl", + "version": "0.0.7", + "hasInstallScript": true, + "license": "BSD-3-Clause", + "dependencies": { + "node-addon-api": "^7.1.0", + "node-gyp-build": "^4.8.0" + }, + "devDependencies": { + "prebuildify": "^6.0.0", + "tree-sitter-cli": "^0.22.6" + }, + "peerDependencies": { + "tree-sitter": "^0.21.0" + }, + "peerDependenciesMeta": { + "tree-sitter": { + "optional": true + } + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "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/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "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": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "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/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/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", + "dev": true + }, + "node_modules/node-abi": { + "version": "3.67.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.67.0.tgz", + "integrity": "sha512-bLn/fU/ALVBE9wj+p4Y21ZJWYFjUXLXPi/IewyLZkx3ApxKDNBWCKdReeKOtD8dWpOdDCeMyLh6ZewzcLsG2Nw==", + "dev": true, + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==" + }, + "node_modules/node-gyp-build": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.1.tgz", + "integrity": "sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/npm-run-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-3.1.0.tgz", + "integrity": "sha512-Dbl4A/VfiVGLgQv29URL9xshU8XDY1GeLy+fsaZ1AA8JDSfjvr5P5+pzRbWqRSBxk6/DW7MIh8lTM/PaGnP2kg==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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/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/prebuildify": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/prebuildify/-/prebuildify-6.0.1.tgz", + "integrity": "sha512-8Y2oOOateom/s8dNBsGIcnm6AxPmLH4/nanQzL5lQMU+sC0CMhzARZHizwr36pUPLdvBnOkCNQzxg4djuFSgIw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5", + "mkdirp-classic": "^0.5.3", + "node-abi": "^3.3.0", + "npm-run-path": "^3.1.0", + "pump": "^3.0.0", + "tar-fs": "^2.1.0" + }, + "bin": { + "prebuildify": "bin.js" + } + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "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/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "dev": true, + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dev": true, + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tree-sitter-cli": { + "version": "0.22.6", + "resolved": "https://registry.npmjs.org/tree-sitter-cli/-/tree-sitter-cli-0.22.6.tgz", + "integrity": "sha512-s7mYOJXi8sIFkt/nLJSqlYZP96VmKTc3BAwIX0rrrlRxWjWuCwixFqwzxWZBQz4R8Hx01iP7z3cT3ih58BUmZQ==", + "dev": true, + "hasInstallScript": true, + "bin": { + "tree-sitter": "cli.js" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "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 + } + } +} diff --git a/package.json b/package.json index 30b9f85..092a4ee 100644 --- a/package.json +++ b/package.json @@ -1,10 +1,53 @@ { - "name": "tree-sitter-wgsl", - "dependencies": { - "nan": "^2.15.0" - }, - "devDependencies": { - "tree-sitter-cli": "^0.20.7" - }, - "main": "bindings/node" + "name": "tree-sitter-wgsl", + "version": "0.0.7", + "description": "WGSL grammar for tree-sitter", + "repository": "github:gpuweb/tree-sitter-wgsl", + "license": "BSD-3-Clause", + "main": "bindings/node", + "types": "bindings/node", + "keywords": [ + "incremental", + "parsing", + "tree-sitter", + "wgsl" + ], + "files": [ + "grammar.js", + "binding.gyp", + "prebuilds/**", + "bindings/node/*", + "queries/*", + "src/**" + ], + "dependencies": { + "node-addon-api": "^7.1.0", + "node-gyp-build": "^4.8.0" + }, + "devDependencies": { + "prebuildify": "^6.0.0", + "tree-sitter-cli": "^0.22.6" + }, + "peerDependencies": { + "tree-sitter": "^0.21.0" + }, + "peerDependenciesMeta": { + "tree-sitter": { + "optional": true + } + }, + "scripts": { + "install": "node-gyp-build", + "prebuildify": "prebuildify --napi --strip", + "build": "tree-sitter generate --no-bindings", + "build-wasm": "tree-sitter build --wasm", + "test": "tree-sitter test", + "parse": "tree-sitter parse" + }, + "tree-sitter": [ + { + "scope": "source.wgsl", + "injection-regex": "^wgsl$" + } + ] } diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..aeefeba --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,29 @@ +[build-system] +requires = ["setuptools>=42", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "tree-sitter-wgsl" +description = "WGSL grammar for tree-sitter" +version = "0.0.7" +keywords = ["incremental", "parsing", "tree-sitter", "wgsl"] +classifiers = [ + "Intended Audience :: Developers", + "License :: OSI Approved :: The 3-Clause BSD License (BSD-3-Clause)", + "Topic :: Software Development :: Compilers", + "Topic :: Text Processing :: Linguistic", + "Typing :: Typed" +] +requires-python = ">=3.8" +license.text = "BSD-3-Clause" +readme = "README.md" + +[project.urls] +Homepage = "https://github.com/gpuweb/tree-sitter-wgsl" + +[project.optional-dependencies] +core = ["tree-sitter~=0.21"] + +[tool.cibuildwheel] +build = "cp38-*" +build-frontend = "build" diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..108e5ec --- /dev/null +++ b/setup.py @@ -0,0 +1,61 @@ +from 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): + dest = join(self.build_lib, "tree_sitter_wgsl", "src") + self.copy_tree("src", dest) + if isdir("queries"): + dest = join(self.build_lib, "tree_sitter_wgsl", "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_wgsl": ["*.pyi", "py.typed"], + "tree_sitter_wgsl.queries": ["*.scm"], + }, + ext_package="tree_sitter_wgsl", + ext_modules=[ + Extension( + name="_binding", + sources=[ + "bindings/python/tree_sitter_wgsl/binding.cpp", + "src/parser.cpp", + "src/scanner.cpp", + ], + extra_compile_args=[ + "-std=c++17", + ] if system() != "Windows" else [ + "/std:c++17", + "/utf-8", + ], + define_macros=[ + ("Py_LIMITED_API", "0x03080000"), + ("PY_SSIZE_T_CLEAN", None) + ], + include_dirs=["src", "src/tree_sitter"], + py_limited_api=True, + ) + ], + cmdclass={ + "build": Build, + "bdist_wheel": BdistWheel + }, + zip_safe=False +) diff --git a/src/grammar.json b/src/grammar.json index bca4fd6..41e851f 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -6,50 +6,44 @@ "type": "SEQ", "members": [ { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "global_directive" - } - }, - { - "type": "BLANK" - } - ] + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "global_directive" + } }, { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "global_decl" - } - }, - { - "type": "BLANK" - } - ] + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "global_decl" + } } ] }, "global_directive": { - "type": "SYMBOL", - "name": "enable_directive" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "diagnostic_directive" + }, + { + "type": "SYMBOL", + "name": "enable_directive" + }, + { + "type": "SYMBOL", + "name": "requires_directive" + } + ] }, "global_decl": { "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } + "type": "STRING", + "value": ";" }, { "type": "SEQ", @@ -59,11 +53,8 @@ "name": "global_variable_decl" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } + "type": "STRING", + "value": ";" } ] }, @@ -72,14 +63,11 @@ "members": [ { "type": "SYMBOL", - "name": "global_constant_decl" + "name": "global_value_decl" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } + "type": "STRING", + "value": ";" } ] }, @@ -91,11 +79,8 @@ "name": "type_alias_decl" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } + "type": "STRING", + "value": ";" } ] }, @@ -115,11 +100,8 @@ "name": "const_assert_statement" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } + "type": "STRING", + "value": ";" } ] } @@ -129,18 +111,12 @@ "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "true" - } + "type": "STRING", + "value": "true" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "false" - } + "type": "STRING", + "value": "false" } ] }, @@ -161,27 +137,18 @@ "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "0[iu]?" - } + "type": "PATTERN", + "value": "0[iu]?" }, { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "[1-9][0-9]*[iu]?" - } + "type": "PATTERN", + "value": "[1-9][0-9]*[iu]?" } ] }, "hex_int_literal": { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "0[xX][0-9a-fA-F]+[iu]?" - } + "type": "PATTERN", + "value": "0[xX][0-9a-fA-F]+[iu]?" }, "float_literal": { "type": "CHOICE", @@ -200,39 +167,24 @@ "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "0[fh]" - } + "type": "PATTERN", + "value": "0[fh]" }, { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "[1-9][0-9]*[fh]" - } + "type": "PATTERN", + "value": "[1-9][0-9]*[fh]" }, { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "[0-9]*\\.[0-9]+([eE][+-]?[0-9]+)?[fh]?" - } + "type": "PATTERN", + "value": "[0-9]*\\.[0-9]+([eE][+-]?[0-9]+)?[fh]?" }, { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "[0-9]+\\.[0-9]*([eE][+-]?[0-9]+)?[fh]?" - } + "type": "PATTERN", + "value": "[0-9]+\\.[0-9]*([eE][+-]?[0-9]+)?[fh]?" }, { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "[0-9]+[eE][+-]?[0-9]+[fh]?" - } + "type": "PATTERN", + "value": "[0-9]+[eE][+-]?[0-9]+[fh]?" } ] }, @@ -240,25 +192,33 @@ "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "0[xX][0-9a-fA-F]*\\.[0-9a-fA-F]+([pP][+-]?[0-9]+[fh]?)?" - } + "type": "PATTERN", + "value": "0[xX][0-9a-fA-F]*\\.[0-9a-fA-F]+([pP][+-]?[0-9]+[fh]?)?" }, { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "0[xX][0-9a-fA-F]+\\.[0-9a-fA-F]*([pP][+-]?[0-9]+[fh]?)?" - } + "type": "PATTERN", + "value": "0[xX][0-9a-fA-F]+\\.[0-9a-fA-F]*([pP][+-]?[0-9]+[fh]?)?" }, { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "0[xX][0-9a-fA-F]+[pP][+-]?[0-9]+[fh]?" - } + "type": "PATTERN", + "value": "0[xX][0-9a-fA-F]+[pP][+-]?[0-9]+[fh]?" + } + ] + }, + "diagnostic_directive": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "diagnostic" + }, + { + "type": "SYMBOL", + "name": "diagnostic_control" + }, + { + "type": "STRING", + "value": ";" } ] }, @@ -280,236 +240,403 @@ ] }, "ident": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "ident_pattern_token" + }, + { + "type": "SYMBOL", + "name": "_disambiguate_template" + } + ] + }, + "member_ident": { "type": "SYMBOL", "name": "ident_pattern_token" }, - "member_ident": { + "diagnostic_name_token": { "type": "SYMBOL", "name": "ident_pattern_token" }, - "attribute": { + "diagnostic_rule_name": { "type": "CHOICE", "members": [ + { + "type": "SYMBOL", + "name": "diagnostic_name_token" + }, { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "align" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } + "type": "SYMBOL", + "name": "diagnostic_name_token" }, { - "type": "SYMBOL", - "name": "expression" + "type": "STRING", + "value": "." }, { "type": "SYMBOL", - "name": "attrib_end" + "name": "diagnostic_name_token" } ] + } + ] + }, + "template_list": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_template_args_start" }, { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "binding" - } - }, - { - "type": "TOKEN", - "content": { + "type": "SYMBOL", + "name": "template_arg_comma_list" + }, + { + "type": "SYMBOL", + "name": "_template_args_end" + } + ] + }, + "template_arg_comma_list": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "template_arg_expression" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { "type": "STRING", - "value": "(" + "value": "," + }, + { + "type": "SYMBOL", + "name": "template_arg_expression" } - }, + ] + } + }, + { + "type": "CHOICE", + "members": [ { - "type": "SYMBOL", - "name": "expression" + "type": "STRING", + "value": "," }, { - "type": "SYMBOL", - "name": "attrib_end" + "type": "BLANK" } ] + } + ] + }, + "template_arg_expression": { + "type": "SYMBOL", + "name": "expression" + }, + "align_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" }, { - "type": "SEQ", + "type": "STRING", + "value": "align" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "builtin" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } - }, - { - "type": "SYMBOL", - "name": "builtin_value_name" + "type": "STRING", + "value": "," }, { - "type": "SYMBOL", - "name": "attrib_end" + "type": "BLANK" } ] }, { - "type": "SEQ", + "type": "STRING", + "value": ")" + } + ] + }, + "binding_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "binding" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } + "type": "STRING", + "value": "," }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "const" - } + "type": "BLANK" } ] }, { - "type": "SEQ", + "type": "STRING", + "value": ")" + } + ] + }, + "blend_src_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "blend_src" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } + "type": "STRING", + "value": "," }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "group" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } - }, + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "builtin_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "builtin" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "builtin_value_name" + }, + { + "type": "CHOICE", + "members": [ { - "type": "SYMBOL", - "name": "expression" + "type": "STRING", + "value": "," }, { - "type": "SYMBOL", - "name": "attrib_end" + "type": "BLANK" } ] }, { - "type": "SEQ", + "type": "STRING", + "value": ")" + } + ] + }, + "builtin_value_name": { + "type": "SYMBOL", + "name": "ident_pattern_token" + }, + "const_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "const" + } + ] + }, + "diagnostic_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "diagnostic" + }, + { + "type": "SYMBOL", + "name": "diagnostic_control" + } + ] + }, + "group_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "group" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "id" - } + "type": "STRING", + "value": "," }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } - }, + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "id_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "id" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "CHOICE", + "members": [ { - "type": "SYMBOL", - "name": "expression" + "type": "STRING", + "value": "," }, { - "type": "SYMBOL", - "name": "attrib_end" + "type": "BLANK" } ] }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "interpolate_attr": { + "type": "CHOICE", + "members": [ { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } + "type": "STRING", + "value": "@" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "interpolate" - } + "type": "STRING", + "value": "interpolate" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } + "type": "STRING", + "value": "(" }, { "type": "SYMBOL", - "name": "interpolation_type_name" + "name": "interpolate_type_name" }, { - "type": "SYMBOL", - "name": "attrib_end" + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" } ] }, @@ -517,165 +644,194 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } + "type": "STRING", + "value": "@" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "interpolate" - } + "type": "STRING", + "value": "interpolate" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } + "type": "STRING", + "value": "(" }, { "type": "SYMBOL", - "name": "interpolation_type_name" + "name": "interpolate_type_name" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "type": "STRING", + "value": "," }, { "type": "SYMBOL", - "name": "interpolation_sample_name" + "name": "interpolate_sampling_name" }, { - "type": "SYMBOL", - "name": "attrib_end" + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" } ] + } + ] + }, + "interpolate_type_name": { + "type": "SYMBOL", + "name": "ident_pattern_token" + }, + "interpolate_sampling_name": { + "type": "SYMBOL", + "name": "ident_pattern_token" + }, + "invariant_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" }, { - "type": "SEQ", + "type": "STRING", + "value": "invariant" + } + ] + }, + "location_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "location" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } + "type": "STRING", + "value": "," }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "invariant" - } + "type": "BLANK" } ] }, { - "type": "SEQ", + "type": "STRING", + "value": ")" + } + ] + }, + "must_use_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "must_use" + } + ] + }, + "size_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "size" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "location" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } - }, - { - "type": "SYMBOL", - "name": "expression" + "type": "STRING", + "value": "," }, { - "type": "SYMBOL", - "name": "attrib_end" + "type": "BLANK" } ] }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "workgroup_size_attr": { + "type": "CHOICE", + "members": [ { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } + "type": "STRING", + "value": "@" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "size" - } + "type": "STRING", + "value": "workgroup_size" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } + "type": "STRING", + "value": "(" }, { "type": "SYMBOL", "name": "expression" }, { - "type": "SYMBOL", - "name": "attrib_end" - } - ] - }, - { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "workgroup_size" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } - }, - { - "type": "SYMBOL", - "name": "expression" + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] }, { - "type": "SYMBOL", - "name": "attrib_end" + "type": "STRING", + "value": ")" } ] }, @@ -683,44 +839,44 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } + "type": "STRING", + "value": "@" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "workgroup_size" - } + "type": "STRING", + "value": "workgroup_size" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } + "type": "STRING", + "value": "(" }, { "type": "SYMBOL", "name": "expression" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "type": "STRING", + "value": "," }, { "type": "SYMBOL", "name": "expression" }, { - "type": "SYMBOL", - "name": "attrib_end" + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" } ] }, @@ -728,184 +884,219 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } + "type": "STRING", + "value": "@" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "workgroup_size" - } + "type": "STRING", + "value": "workgroup_size" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } + "type": "STRING", + "value": "(" }, { "type": "SYMBOL", "name": "expression" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "type": "STRING", + "value": "," }, { "type": "SYMBOL", "name": "expression" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "type": "STRING", + "value": "," }, { "type": "SYMBOL", "name": "expression" }, { - "type": "SYMBOL", - "name": "attrib_end" - } - ] - }, - { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "vertex" - } + "type": "STRING", + "value": ")" } ] + } + ] + }, + "vertex_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" }, { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "fragment" - } - } - ] + "type": "STRING", + "value": "vertex" + } + ] + }, + "fragment_attr": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" }, { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "@" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "compute" - } - } - ] + "type": "STRING", + "value": "fragment" } ] }, - "attrib_end": { + "compute_attr": { "type": "SEQ", "members": [ { - "type": "CHOICE", + "type": "STRING", + "value": "@" + }, + { + "type": "STRING", + "value": "compute" + } + ] + }, + "attribute": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "type": "STRING", + "value": "@" }, { - "type": "BLANK" + "type": "SYMBOL", + "name": "ident_pattern_token" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "argument_expression_list" + }, + { + "type": "BLANK" + } + ] } ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ")" - } + "type": "SYMBOL", + "name": "align_attr" + }, + { + "type": "SYMBOL", + "name": "binding_attr" + }, + { + "type": "SYMBOL", + "name": "blend_src_attr" + }, + { + "type": "SYMBOL", + "name": "builtin_attr" + }, + { + "type": "SYMBOL", + "name": "const_attr" + }, + { + "type": "SYMBOL", + "name": "diagnostic_attr" + }, + { + "type": "SYMBOL", + "name": "group_attr" + }, + { + "type": "SYMBOL", + "name": "id_attr" + }, + { + "type": "SYMBOL", + "name": "interpolate_attr" + }, + { + "type": "SYMBOL", + "name": "invariant_attr" + }, + { + "type": "SYMBOL", + "name": "location_attr" + }, + { + "type": "SYMBOL", + "name": "must_use_attr" + }, + { + "type": "SYMBOL", + "name": "size_attr" + }, + { + "type": "SYMBOL", + "name": "workgroup_size_attr" + }, + { + "type": "SYMBOL", + "name": "vertex_attr" + }, + { + "type": "SYMBOL", + "name": "fragment_attr" + }, + { + "type": "SYMBOL", + "name": "compute_attr" } ] }, - "array_type_specifier": { + "diagnostic_control": { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "array" - } + "type": "STRING", + "value": "(" }, { "type": "SYMBOL", - "name": "_disambiguate_template" + "name": "severity_control_name" }, { - "type": "SYMBOL", - "name": "_template_args_start" + "type": "STRING", + "value": "," }, { "type": "SYMBOL", - "name": "type_specifier" + "name": "diagnostic_rule_name" }, { "type": "CHOICE", "members": [ { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } - }, - { - "type": "SYMBOL", - "name": "element_count_expression" - } - ] + "type": "STRING", + "value": "," }, { "type": "BLANK" @@ -913,21 +1104,8 @@ ] }, { - "type": "SYMBOL", - "name": "_template_args_end" - } - ] - }, - "element_count_expression": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "additive_expression" - }, - { - "type": "SYMBOL", - "name": "bitwise_expression" + "type": "STRING", + "value": ")" } ] }, @@ -935,11 +1113,8 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "struct" - } + "type": "STRING", + "value": "struct" }, { "type": "SYMBOL", @@ -955,52 +1130,35 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "{" - } + "type": "STRING", + "value": "{" }, { "type": "SYMBOL", "name": "struct_member" }, { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } - }, - { - "type": "SYMBOL", - "name": "struct_member" - } - ] + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "struct_member" } - }, - { - "type": "BLANK" - } - ] + ] + } }, { "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "type": "STRING", + "value": "," }, { "type": "BLANK" @@ -1008,11 +1166,8 @@ ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "}" - } + "type": "STRING", + "value": "}" } ] }, @@ -1020,30 +1175,19 @@ "type": "SEQ", "members": [ { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "attribute" - } - }, - { - "type": "BLANK" - } - ] + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } }, { "type": "SYMBOL", "name": "member_ident" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ":" - } + "type": "STRING", + "value": ":" }, { "type": "SYMBOL", @@ -1051,39 +1195,77 @@ } ] }, - "texture_and_sampler_types": { - "type": "CHOICE", + "type_alias_decl": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "alias" + }, + { + "type": "SYMBOL", + "name": "ident" + }, + { + "type": "STRING", + "value": "=" + }, + { + "type": "SYMBOL", + "name": "type_specifier" + } + ] + }, + "type_specifier": { + "type": "SYMBOL", + "name": "template_elaborated_ident" + }, + "template_elaborated_ident": { + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "sampler_type" + "name": "ident" }, { "type": "SYMBOL", - "name": "depth_texture_type" + "name": "_disambiguate_template" }, { - "type": "SEQ", + "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "sampled_texture_type" + "name": "template_list" }, { - "type": "SYMBOL", - "name": "_disambiguate_template" - }, + "type": "BLANK" + } + ] + } + ] + }, + "variable_or_value_statement": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "variable_decl" + }, + { + "type": "SEQ", + "members": [ { "type": "SYMBOL", - "name": "_template_args_start" + "name": "variable_decl" }, { - "type": "SYMBOL", - "name": "type_specifier" + "type": "STRING", + "value": "=" }, { "type": "SYMBOL", - "name": "_template_args_end" + "name": "expression" } ] }, @@ -1091,24 +1273,20 @@ "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "multisampled_texture_type" - }, - { - "type": "SYMBOL", - "name": "_disambiguate_template" + "type": "STRING", + "value": "let" }, { "type": "SYMBOL", - "name": "_template_args_start" + "name": "optionally_typed_ident" }, { - "type": "SYMBOL", - "name": "type_specifier" + "type": "STRING", + "value": "=" }, { "type": "SYMBOL", - "name": "_template_args_end" + "name": "expression" } ] }, @@ -1116,311 +1294,142 @@ "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "storage_texture_type" - }, - { - "type": "SYMBOL", - "name": "_disambiguate_template" - }, - { - "type": "SYMBOL", - "name": "_template_args_start" + "type": "STRING", + "value": "const" }, { "type": "SYMBOL", - "name": "texel_format" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "name": "optionally_typed_ident" }, { - "type": "SYMBOL", - "name": "access_mode" + "type": "STRING", + "value": "=" }, { "type": "SYMBOL", - "name": "_template_args_end" + "name": "expression" } ] } ] }, - "sampler_type": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "sampler" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "sampler_comparison" - } - } - ] - }, - "sampled_texture_type": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_1d" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_2d" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_2d_array" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_3d" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_cube" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_cube_array" - } - } - ] - }, - "multisampled_texture_type": { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_multisampled_2d" - } - }, - "storage_texture_type": { - "type": "CHOICE", + "variable_decl": { + "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_storage_1d" - } + "type": "STRING", + "value": "var" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_storage_2d" - } + "type": "SYMBOL", + "name": "_disambiguate_template" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_storage_2d_array" - } + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "template_list" + }, + { + "type": "BLANK" + } + ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_storage_3d" - } + "type": "SYMBOL", + "name": "optionally_typed_ident" } ] }, - "depth_texture_type": { - "type": "CHOICE", + "optionally_typed_ident": { + "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_depth_2d" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_depth_2d_array" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_depth_cube" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_depth_cube_array" - } + "type": "SYMBOL", + "name": "ident" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "texture_depth_multisampled_2d" - } + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": ":" + }, + { + "type": "SYMBOL", + "name": "type_specifier" + } + ] + }, + { + "type": "BLANK" + } + ] } ] }, - "type_alias_decl": { + "global_variable_decl": { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "alias" - } - }, - { - "type": "SYMBOL", - "name": "ident" - }, - { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "=" + "type": "SYMBOL", + "name": "attribute" } }, { "type": "SYMBOL", - "name": "type_specifier" - } - ] - }, - "type_specifier": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "ident" + "name": "variable_decl" }, { - "type": "SYMBOL", - "name": "type_specifier_without_ident" + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + }, + { + "type": "BLANK" + } + ] } ] }, - "type_specifier_without_ident": { + "global_value_decl": { "type": "CHOICE", "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "bool" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "f32" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "f16" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "i32" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "u32" - } - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "vec_prefix" - }, - { - "type": "SYMBOL", - "name": "_disambiguate_template" - }, - { - "type": "SYMBOL", - "name": "_template_args_start" - }, - { - "type": "SYMBOL", - "name": "type_specifier" - }, - { - "type": "SYMBOL", - "name": "_template_args_end" - } - ] - }, { "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "mat_prefix" - }, - { - "type": "SYMBOL", - "name": "_disambiguate_template" + "type": "STRING", + "value": "const" }, { "type": "SYMBOL", - "name": "_template_args_start" + "name": "optionally_typed_ident" }, { - "type": "SYMBOL", - "name": "type_specifier" + "type": "STRING", + "value": "=" }, { "type": "SYMBOL", - "name": "_template_args_end" + "name": "expression" } ] }, @@ -1428,34 +1437,19 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "ptr" + "type": "SYMBOL", + "name": "attribute" } }, { - "type": "SYMBOL", - "name": "_disambiguate_template" - }, - { - "type": "SYMBOL", - "name": "_template_args_start" - }, - { - "type": "SYMBOL", - "name": "address_space" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "type": "STRING", + "value": "override" }, { "type": "SYMBOL", - "name": "type_specifier" + "name": "optionally_typed_ident" }, { "type": "CHOICE", @@ -1464,15 +1458,12 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "type": "STRING", + "value": "=" }, { "type": "SYMBOL", - "name": "access_mode" + "name": "expression" } ] }, @@ -1480,169 +1471,157 @@ "type": "BLANK" } ] - }, - { - "type": "SYMBOL", - "name": "_template_args_end" } ] + } + ] + }, + "primary_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "template_elaborated_ident" }, { "type": "SYMBOL", - "name": "array_type_specifier" + "name": "call_expression" }, { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "atomic" - } - }, - { - "type": "SYMBOL", - "name": "_disambiguate_template" - }, - { - "type": "SYMBOL", - "name": "_template_args_start" - }, - { - "type": "SYMBOL", - "name": "type_specifier" - }, - { - "type": "SYMBOL", - "name": "_template_args_end" - } - ] + "type": "SYMBOL", + "name": "literal" }, { "type": "SYMBOL", - "name": "texture_and_sampler_types" + "name": "paren_expression" } ] }, - "vec_prefix": { - "type": "CHOICE", + "call_expression": { + "type": "SYMBOL", + "name": "call_phrase" + }, + "call_phrase": { + "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "vec2" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "vec3" - } + "type": "SYMBOL", + "name": "template_elaborated_ident" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "vec4" - } + "type": "SYMBOL", + "name": "argument_expression_list" } ] }, - "mat_prefix": { - "type": "CHOICE", + "paren_expression": { + "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mat2x2" - } + "type": "STRING", + "value": "(" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mat2x3" - } + "type": "SYMBOL", + "name": "expression" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mat2x4" - } - }, + "type": "STRING", + "value": ")" + } + ] + }, + "argument_expression_list": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mat3x2" - } + "type": "STRING", + "value": "(" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mat3x3" - } + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "expression_comma_list" + }, + { + "type": "BLANK" + } + ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mat3x4" - } - }, + "type": "STRING", + "value": ")" + } + ] + }, + "expression_comma_list": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mat4x2" - } + "type": "SYMBOL", + "name": "expression" }, { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "mat4x3" + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] } }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mat4x4" - } + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] } ] }, - "variable_statement": { + "component_or_swizzle_specifier": { "type": "CHOICE", "members": [ - { - "type": "SYMBOL", - "name": "variable_decl" - }, { "type": "SEQ", "members": [ + { + "type": "STRING", + "value": "[" + }, { "type": "SYMBOL", - "name": "variable_decl" + "name": "expression" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "=" - } + "type": "STRING", + "value": "]" }, { - "type": "SYMBOL", - "name": "expression" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "component_or_swizzle_specifier" + }, + { + "type": "BLANK" + } + ] } ] }, @@ -1650,26 +1629,24 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "let" - } + "type": "STRING", + "value": "." }, { "type": "SYMBOL", - "name": "optionally_typed_ident" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "=" - } + "name": "member_ident" }, { - "type": "SYMBOL", - "name": "expression" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "component_or_swizzle_specifier" + }, + { + "type": "BLANK" + } + ] } ] }, @@ -1677,88 +1654,116 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "const" - } + "type": "STRING", + "value": "." }, { "type": "SYMBOL", - "name": "optionally_typed_ident" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "=" - } + "name": "swizzle_name" }, { - "type": "SYMBOL", - "name": "expression" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "component_or_swizzle_specifier" + }, + { + "type": "BLANK" + } + ] } ] } ] }, - "variable_decl": { - "type": "SEQ", + "unary_expression": { + "type": "CHOICE", "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "var" - } - }, { "type": "SYMBOL", - "name": "_disambiguate_template" + "name": "singular_expression" }, { - "type": "CHOICE", + "type": "SEQ", "members": [ + { + "type": "STRING", + "value": "-" + }, { "type": "SYMBOL", - "name": "variable_qualifier" + "name": "unary_expression" + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "!" }, { - "type": "BLANK" + "type": "SYMBOL", + "name": "unary_expression" } ] }, { - "type": "SYMBOL", - "name": "optionally_typed_ident" + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "~" + }, + { + "type": "SYMBOL", + "name": "unary_expression" + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "*" + }, + { + "type": "SYMBOL", + "name": "unary_expression" + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "&" + }, + { + "type": "SYMBOL", + "name": "unary_expression" + } + ] } ] }, - "optionally_typed_ident": { + "singular_expression": { "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "ident" + "name": "primary_expression" }, { "type": "CHOICE", "members": [ { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ":" - } - }, - { - "type": "SYMBOL", - "name": "type_specifier" - } - ] + "type": "SYMBOL", + "name": "component_or_swizzle_specifier" }, { "type": "BLANK" @@ -1767,273 +1772,196 @@ } ] }, - "variable_qualifier": { - "type": "SEQ", + "lhs_expression": { + "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "_template_args_start" - }, - { - "type": "SYMBOL", - "name": "address_space" - }, - { - "type": "CHOICE", + "type": "SEQ", "members": [ { - "type": "SEQ", + "type": "SYMBOL", + "name": "core_lhs_expression" + }, + { + "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "type": "SYMBOL", + "name": "component_or_swizzle_specifier" }, { - "type": "SYMBOL", - "name": "access_mode" + "type": "BLANK" } ] - }, - { - "type": "BLANK" } ] }, { - "type": "SYMBOL", - "name": "_template_args_end" - } - ] - }, - "global_variable_decl": { - "type": "SEQ", - "members": [ - { - "type": "CHOICE", + "type": "SEQ", "members": [ { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "attribute" - } + "type": "STRING", + "value": "*" }, { - "type": "BLANK" + "type": "SYMBOL", + "name": "lhs_expression" } ] }, { - "type": "SYMBOL", - "name": "variable_decl" - }, - { - "type": "CHOICE", + "type": "SEQ", "members": [ { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "=" - } - }, - { - "type": "SYMBOL", - "name": "expression" - } - ] + "type": "STRING", + "value": "&" }, { - "type": "BLANK" + "type": "SYMBOL", + "name": "lhs_expression" } ] } ] }, - "global_constant_decl": { + "core_lhs_expression": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "const" - } + "type": "SYMBOL", + "name": "ident" }, { "type": "SYMBOL", - "name": "optionally_typed_ident" - }, + "name": "_disambiguate_template" + } + ] + }, + { + "type": "SEQ", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "=" - } + "type": "STRING", + "value": "(" }, { "type": "SYMBOL", - "name": "expression" + "name": "lhs_expression" + }, + { + "type": "STRING", + "value": ")" } ] + } + ] + }, + "multiplicative_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "unary_expression" }, { "type": "SEQ", "members": [ { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "attribute" - } - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "override" - } + "type": "SYMBOL", + "name": "multiplicative_expression" }, { "type": "SYMBOL", - "name": "optionally_typed_ident" + "name": "multiplicative_operator" }, { - "type": "CHOICE", - "members": [ - { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "=" - } - }, - { - "type": "SYMBOL", - "name": "expression" - } - ] - }, - { - "type": "BLANK" - } - ] + "type": "SYMBOL", + "name": "unary_expression" } ] } ] }, - "primary_expression": { + "multiplicative_operator": { "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "ident" + "type": "STRING", + "value": "*" }, { - "type": "SYMBOL", - "name": "call_expression" + "type": "STRING", + "value": "/" }, { - "type": "SYMBOL", - "name": "literal" - }, + "type": "STRING", + "value": "%" + } + ] + }, + "additive_expression": { + "type": "CHOICE", + "members": [ { "type": "SYMBOL", - "name": "paren_expression" + "name": "multiplicative_expression" }, { "type": "SEQ", "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "bitcast" - } - }, - { - "type": "SYMBOL", - "name": "_disambiguate_template" - }, - { - "type": "SYMBOL", - "name": "_template_args_start" - }, { "type": "SYMBOL", - "name": "type_specifier" + "name": "additive_expression" }, { "type": "SYMBOL", - "name": "_template_args_end" + "name": "additive_operator" }, { "type": "SYMBOL", - "name": "paren_expression" + "name": "multiplicative_expression" } ] } ] }, - "call_expression": { - "type": "SYMBOL", - "name": "call_phrase" - }, - "call_phrase": { - "type": "SEQ", + "additive_operator": { + "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "callable" + "type": "STRING", + "value": "+" }, { - "type": "SYMBOL", - "name": "argument_expression_list" + "type": "STRING", + "value": "-" } ] }, - "callable": { + "shift_expression": { "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "ident" - }, - { - "type": "SYMBOL", - "name": "type_specifier_without_ident" + "name": "additive_expression" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "vec_prefix" + "name": "unary_expression" }, { "type": "SYMBOL", - "name": "_disambiguate_template" + "name": "_shift_left" + }, + { + "type": "SYMBOL", + "name": "unary_expression" } ] }, @@ -2042,172 +1970,92 @@ "members": [ { "type": "SYMBOL", - "name": "mat_prefix" + "name": "unary_expression" }, { "type": "SYMBOL", - "name": "_disambiguate_template" - } - ] - }, - { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "array" - } + "name": "_shift_right" }, { "type": "SYMBOL", - "name": "_disambiguate_template" + "name": "unary_expression" } ] } ] }, - "paren_expression": { - "type": "SEQ", + "relational_expression": { + "type": "CHOICE", "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } - }, { "type": "SYMBOL", - "name": "expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ")" - } - } - ] - }, - "argument_expression_list": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } + "name": "shift_expression" }, { - "type": "CHOICE", + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "expression_comma_list" + "name": "shift_expression" }, { - "type": "BLANK" + "type": "SYMBOL", + "name": "_less_than" + }, + { + "type": "SYMBOL", + "name": "shift_expression" } ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ")" - } - } - ] - }, - "expression_comma_list": { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "expression" - }, - { - "type": "CHOICE", + "type": "SEQ", "members": [ { - "type": "REPEAT1", - "content": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } - }, - { - "type": "SYMBOL", - "name": "expression" - } - ] - } + "type": "SYMBOL", + "name": "shift_expression" }, { - "type": "BLANK" + "type": "SYMBOL", + "name": "_greater_than" + }, + { + "type": "SYMBOL", + "name": "shift_expression" } ] }, { - "type": "CHOICE", + "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } + "type": "SYMBOL", + "name": "shift_expression" }, { - "type": "BLANK" + "type": "SYMBOL", + "name": "_less_than_equal" + }, + { + "type": "SYMBOL", + "name": "shift_expression" } ] - } - ] - }, - "component_or_swizzle_specifier": { - "type": "CHOICE", - "members": [ + }, { "type": "SEQ", "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "[" - } - }, { "type": "SYMBOL", - "name": "expression" + "name": "shift_expression" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "]" - } + "type": "SYMBOL", + "name": "_greater_than_equal" }, { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "component_or_swizzle_specifier" - }, - { - "type": "BLANK" - } - ] + "type": "SYMBOL", + "name": "shift_expression" } ] }, @@ -2215,27 +2063,16 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "." - } + "type": "SYMBOL", + "name": "shift_expression" }, { - "type": "SYMBOL", - "name": "member_ident" + "type": "STRING", + "value": "==" }, { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "component_or_swizzle_specifier" - }, - { - "type": "BLANK" - } - ] + "type": "SYMBOL", + "name": "shift_expression" } ] }, @@ -2243,112 +2080,116 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "." - } + "type": "SYMBOL", + "name": "shift_expression" }, { - "type": "SYMBOL", - "name": "swizzle_name" + "type": "STRING", + "value": "!=" }, { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "component_or_swizzle_specifier" - }, - { - "type": "BLANK" - } - ] + "type": "SYMBOL", + "name": "shift_expression" } ] } ] }, - "unary_expression": { + "short_circuit_and_expression": { "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "singular_expression" + "name": "relational_expression" }, { "type": "SEQ", "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "-" - } - }, { "type": "SYMBOL", - "name": "unary_expression" - } - ] - }, - { - "type": "SEQ", - "members": [ + "name": "short_circuit_and_expression" + }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "!" - } + "type": "STRING", + "value": "&&" }, { "type": "SYMBOL", - "name": "unary_expression" + "name": "relational_expression" } ] + } + ] + }, + "short_circuit_or_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "relational_expression" }, { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "~" - } + "type": "SYMBOL", + "name": "short_circuit_or_expression" + }, + { + "type": "STRING", + "value": "||" }, { "type": "SYMBOL", - "name": "unary_expression" + "name": "relational_expression" } ] + } + ] + }, + "binary_or_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "unary_expression" }, { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "*" - } + "type": "SYMBOL", + "name": "binary_or_expression" + }, + { + "type": "STRING", + "value": "|" }, { "type": "SYMBOL", "name": "unary_expression" } ] + } + ] + }, + "binary_and_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "unary_expression" }, { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "&" - } + "type": "SYMBOL", + "name": "binary_and_expression" + }, + { + "type": "STRING", + "value": "&" }, { "type": "SYMBOL", @@ -2358,28 +2199,33 @@ } ] }, - "singular_expression": { - "type": "SEQ", + "binary_xor_expression": { + "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "primary_expression" + "name": "unary_expression" }, { - "type": "CHOICE", + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "component_or_swizzle_specifier" + "name": "binary_xor_expression" }, { - "type": "BLANK" + "type": "STRING", + "value": "^" + }, + { + "type": "SYMBOL", + "name": "unary_expression" } ] } ] }, - "lhs_expression": { + "bitwise_expression": { "type": "CHOICE", "members": [ { @@ -2387,35 +2233,15 @@ "members": [ { "type": "SYMBOL", - "name": "core_lhs_expression" + "name": "binary_and_expression" }, { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "component_or_swizzle_specifier" - }, - { - "type": "BLANK" - } - ] - } - ] - }, - { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "*" - } + "type": "STRING", + "value": "&" }, { "type": "SYMBOL", - "name": "lhs_expression" + "name": "unary_expression" } ] }, @@ -2423,170 +2249,138 @@ "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "&" - } + "type": "SYMBOL", + "name": "binary_or_expression" + }, + { + "type": "STRING", + "value": "|" }, { "type": "SYMBOL", - "name": "lhs_expression" + "name": "unary_expression" } ] - } - ] - }, - "core_lhs_expression": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "ident" }, { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } + "type": "SYMBOL", + "name": "binary_xor_expression" }, { - "type": "SYMBOL", - "name": "lhs_expression" + "type": "STRING", + "value": "^" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ")" - } + "type": "SYMBOL", + "name": "unary_expression" } ] } ] }, - "multiplicative_expression": { + "expression": { "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "unary_expression" + "name": "relational_expression" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "multiplicative_expression" + "name": "short_circuit_or_expression" }, { - "type": "SYMBOL", - "name": "multiplicative_operator" + "type": "STRING", + "value": "||" }, { "type": "SYMBOL", - "name": "unary_expression" + "name": "relational_expression" } ] - } - ] - }, - "multiplicative_operator": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "*" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "/" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "%" - } - } - ] - }, - "additive_expression": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "multiplicative_expression" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "additive_expression" + "name": "short_circuit_and_expression" }, { - "type": "SYMBOL", - "name": "additive_operator" + "type": "STRING", + "value": "&&" }, { "type": "SYMBOL", - "name": "multiplicative_expression" + "name": "relational_expression" } ] + }, + { + "type": "SYMBOL", + "name": "bitwise_expression" } ] }, - "additive_operator": { - "type": "CHOICE", + "compound_statement": { + "type": "SEQ", "members": [ { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "+" + "type": "SYMBOL", + "name": "attribute" } }, { - "type": "TOKEN", + "type": "STRING", + "value": "{" + }, + { + "type": "REPEAT", "content": { - "type": "STRING", - "value": "-" + "type": "SYMBOL", + "name": "statement" } + }, + { + "type": "STRING", + "value": "}" } ] }, - "shift_expression": { + "assignment_statement": { "type": "CHOICE", "members": [ - { - "type": "SYMBOL", - "name": "additive_expression" - }, { "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "unary_expression" + "name": "lhs_expression" }, { - "type": "SYMBOL", - "name": "_shift_left" + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "SYMBOL", + "name": "compound_assignment_operator" + } + ] }, { "type": "SYMBOL", - "name": "unary_expression" + "name": "expression" } ] }, @@ -2594,420 +2388,284 @@ "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "unary_expression" + "type": "STRING", + "value": "_" }, { - "type": "SYMBOL", - "name": "_shift_right" + "type": "STRING", + "value": "=" }, { "type": "SYMBOL", - "name": "unary_expression" + "name": "expression" } ] } ] }, - "relational_expression": { + "compound_assignment_operator": { "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "shift_expression" + "type": "STRING", + "value": "+=" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "shift_expression" - }, - { - "type": "SYMBOL", - "name": "_less_than" - }, - { - "type": "SYMBOL", - "name": "shift_expression" - } - ] + "type": "STRING", + "value": "-=" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "shift_expression" - }, - { - "type": "SYMBOL", - "name": "_greater_than" - }, - { - "type": "SYMBOL", - "name": "shift_expression" - } - ] + "type": "STRING", + "value": "*=" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "shift_expression" - }, - { - "type": "SYMBOL", - "name": "_less_than_equal" - }, - { - "type": "SYMBOL", - "name": "shift_expression" - } - ] + "type": "STRING", + "value": "/=" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "shift_expression" - }, - { - "type": "SYMBOL", - "name": "_greater_than_equal" - }, - { - "type": "SYMBOL", - "name": "shift_expression" - } - ] + "type": "STRING", + "value": "%=" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "shift_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "==" - } - }, - { - "type": "SYMBOL", - "name": "shift_expression" - } - ] + "type": "STRING", + "value": "&=" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "shift_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "!=" - } - }, - { - "type": "SYMBOL", - "name": "shift_expression" - } - ] + "type": "STRING", + "value": "|=" + }, + { + "type": "STRING", + "value": "^=" + }, + { + "type": "SYMBOL", + "name": "_shift_right_assign" + }, + { + "type": "SYMBOL", + "name": "_shift_left_assign" } ] }, - "short_circuit_and_expression": { - "type": "CHOICE", + "increment_statement": { + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "relational_expression" + "name": "lhs_expression" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "short_circuit_and_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "&&" - } - }, - { - "type": "SYMBOL", - "name": "relational_expression" - } - ] + "type": "STRING", + "value": "++" } ] }, - "short_circuit_or_expression": { - "type": "CHOICE", + "decrement_statement": { + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "relational_expression" + "name": "lhs_expression" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "short_circuit_or_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "||" - } - }, - { - "type": "SYMBOL", - "name": "relational_expression" - } - ] + "type": "STRING", + "value": "--" } ] }, - "binary_or_expression": { - "type": "CHOICE", + "if_statement": { + "type": "SEQ", "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + }, { "type": "SYMBOL", - "name": "unary_expression" + "name": "if_clause" }, { - "type": "SEQ", + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "else_if_clause" + } + }, + { + "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "binary_or_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "|" - } + "name": "else_clause" }, { - "type": "SYMBOL", - "name": "unary_expression" + "type": "BLANK" } ] } ] }, - "binary_and_expression": { - "type": "CHOICE", + "if_clause": { + "type": "SEQ", "members": [ + { + "type": "STRING", + "value": "if" + }, { "type": "SYMBOL", - "name": "unary_expression" + "name": "expression" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "binary_and_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "&" - } - }, - { - "type": "SYMBOL", - "name": "unary_expression" - } - ] + "type": "SYMBOL", + "name": "compound_statement" } ] }, - "binary_xor_expression": { - "type": "CHOICE", + "else_if_clause": { + "type": "SEQ", "members": [ + { + "type": "STRING", + "value": "else" + }, + { + "type": "STRING", + "value": "if" + }, { "type": "SYMBOL", - "name": "unary_expression" + "name": "expression" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "binary_xor_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "^" - } - }, - { - "type": "SYMBOL", - "name": "unary_expression" - } - ] + "type": "SYMBOL", + "name": "compound_statement" } ] }, - "bitwise_expression": { - "type": "CHOICE", + "else_clause": { + "type": "SEQ", "members": [ { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "binary_and_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "&" - } - }, - { - "type": "SYMBOL", - "name": "unary_expression" - } - ] + "type": "STRING", + "value": "else" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "binary_or_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "|" - } - }, - { - "type": "SYMBOL", - "name": "unary_expression" - } - ] + "type": "SYMBOL", + "name": "compound_statement" + } + ] + }, + "switch_statement": { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "binary_xor_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "^" - } - }, - { - "type": "SYMBOL", - "name": "unary_expression" - } - ] + "type": "STRING", + "value": "switch" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "SYMBOL", + "name": "switch_body" } ] }, - "expression": { + "switch_body": { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "REPEAT1", + "content": { + "type": "SYMBOL", + "name": "switch_clause" + } + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "switch_clause": { "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "relational_expression" + "name": "case_clause" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "short_circuit_or_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "||" - } - }, - { - "type": "SYMBOL", - "name": "relational_expression" - } - ] + "type": "SYMBOL", + "name": "default_alone_clause" + } + ] + }, + "case_clause": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "case" }, { - "type": "SEQ", + "type": "SYMBOL", + "name": "case_selectors" + }, + { + "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "short_circuit_and_expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "&&" - } + "type": "STRING", + "value": ":" }, { - "type": "SYMBOL", - "name": "relational_expression" + "type": "BLANK" } ] }, { "type": "SYMBOL", - "name": "bitwise_expression" + "name": "compound_statement" } ] }, - "compound_statement": { + "default_alone_clause": { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "{" - } + "type": "STRING", + "value": "default" }, { "type": "CHOICE", "members": [ { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "statement" - } + "type": "STRING", + "value": ":" }, { "type": "BLANK" @@ -3015,200 +2673,184 @@ ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "}" - } + "type": "SYMBOL", + "name": "compound_statement" } ] }, - "assignment_statement": { - "type": "CHOICE", + "case_selectors": { + "type": "SEQ", "members": [ { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "lhs_expression" - }, - { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "=" - } - }, - { - "type": "SYMBOL", - "name": "compound_assignment_operator" - } - ] - }, - { - "type": "SYMBOL", - "name": "expression" - } - ] + "type": "SYMBOL", + "name": "case_selector" }, { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { "type": "STRING", - "value": "_" + "value": "," + }, + { + "type": "SYMBOL", + "name": "case_selector" } - }, + ] + } + }, + { + "type": "CHOICE", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "=" - } + "type": "STRING", + "value": "," }, { - "type": "SYMBOL", - "name": "expression" + "type": "BLANK" } ] } ] }, - "compound_assignment_operator": { + "case_selector": { "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "+=" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "-=" - } + "type": "STRING", + "value": "default" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "*=" - } - }, + "type": "SYMBOL", + "name": "expression" + } + ] + }, + "loop_statement": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "/=" + "type": "SYMBOL", + "name": "attribute" } }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "%=" - } + "type": "STRING", + "value": "loop" }, { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "&=" + "type": "SYMBOL", + "name": "attribute" } }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "|=" - } + "type": "STRING", + "value": "{" }, { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "^=" + "type": "SYMBOL", + "name": "statement" } }, { - "type": "SYMBOL", - "name": "_shift_right_assign" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "continuing_statement" + }, + { + "type": "BLANK" + } + ] }, { - "type": "SYMBOL", - "name": "_shift_left_assign" + "type": "STRING", + "value": "}" } ] }, - "increment_statement": { + "for_statement": { "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "lhs_expression" - }, - { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "++" + "type": "SYMBOL", + "name": "attribute" } - } - ] - }, - "decrement_statement": { - "type": "SEQ", - "members": [ + }, + { + "type": "STRING", + "value": "for" + }, + { + "type": "STRING", + "value": "(" + }, { "type": "SYMBOL", - "name": "lhs_expression" + "name": "for_header" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "--" - } + "type": "STRING", + "value": ")" + }, + { + "type": "SYMBOL", + "name": "compound_statement" } ] }, - "if_statement": { + "for_header": { "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "if_clause" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "for_init" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ";" }, { "type": "CHOICE", "members": [ { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "else_if_clause" - } + "type": "SYMBOL", + "name": "expression" }, { "type": "BLANK" } ] }, + { + "type": "STRING", + "value": ";" + }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "else_clause" + "name": "for_update" }, { "type": "BLANK" @@ -3217,142 +2859,129 @@ } ] }, - "if_clause": { - "type": "SEQ", + "for_init": { + "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "if" - } + "type": "SYMBOL", + "name": "variable_or_value_statement" }, { "type": "SYMBOL", - "name": "expression" + "name": "variable_updating_statement" }, { "type": "SYMBOL", - "name": "compound_statement" + "name": "func_call_statement" } ] }, - "else_if_clause": { - "type": "SEQ", + "for_update": { + "type": "CHOICE", "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "else" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "if" - } - }, { "type": "SYMBOL", - "name": "expression" + "name": "variable_updating_statement" }, { "type": "SYMBOL", - "name": "compound_statement" + "name": "func_call_statement" } ] }, - "else_clause": { + "while_statement": { "type": "SEQ", "members": [ { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "else" + "type": "SYMBOL", + "name": "attribute" } }, + { + "type": "STRING", + "value": "while" + }, + { + "type": "SYMBOL", + "name": "expression" + }, { "type": "SYMBOL", "name": "compound_statement" } ] }, - "switch_statement": { + "break_statement": { + "type": "STRING", + "value": "break" + }, + "break_if_statement": { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "switch" - } - }, - { - "type": "SYMBOL", - "name": "expression" + "type": "STRING", + "value": "break" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "{" - } + "type": "STRING", + "value": "if" }, { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "switch_body" - } + "type": "SYMBOL", + "name": "expression" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "}" - } + "type": "STRING", + "value": ";" } ] }, - "switch_body": { - "type": "CHOICE", + "continue_statement": { + "type": "STRING", + "value": "continue" + }, + "continuing_statement": { + "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "case_clause" + "type": "STRING", + "value": "continuing" }, { "type": "SYMBOL", - "name": "default_alone_clause" + "name": "continuing_compound_statement" } ] }, - "case_clause": { + "continuing_compound_statement": { "type": "SEQ", "members": [ { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "case" + "type": "SYMBOL", + "name": "attribute" } }, { - "type": "SYMBOL", - "name": "case_selectors" + "type": "STRING", + "value": "{" + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "statement" + } }, { "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ":" - } + "type": "SYMBOL", + "name": "break_if_statement" }, { "type": "BLANK" @@ -3360,2411 +2989,515 @@ ] }, { - "type": "SYMBOL", - "name": "compound_statement" + "type": "STRING", + "value": "}" } ] }, - "default_alone_clause": { + "return_statement": { "type": "SEQ", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "default" - } + "type": "STRING", + "value": "return" }, { "type": "CHOICE", "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ":" - } + "type": "SYMBOL", + "name": "expression" }, { "type": "BLANK" } ] + } + ] + }, + "func_call_statement": { + "type": "SYMBOL", + "name": "call_phrase" + }, + "const_assert_statement": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "const_assert" }, { "type": "SYMBOL", - "name": "compound_statement" + "name": "expression" } ] }, - "case_selectors": { - "type": "SEQ", + "statement": { + "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "case_selector" + "type": "STRING", + "value": ";" }, { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } - }, - { - "type": "SYMBOL", - "name": "case_selector" - } - ] - } - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } - }, - { - "type": "BLANK" - } - ] - } - ] - }, - "case_selector": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "default" - } - }, - { - "type": "SYMBOL", - "name": "expression" - } - ] - }, - "loop_statement": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "loop" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "{" - } - }, - { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "statement" - } - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "CHOICE", + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "continuing_statement" + "name": "return_statement" }, { - "type": "BLANK" + "type": "STRING", + "value": ";" } ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "}" - } - } - ] - }, - "for_statement": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "for" - } + "type": "SYMBOL", + "name": "if_statement" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } + "type": "SYMBOL", + "name": "switch_statement" }, { "type": "SYMBOL", - "name": "for_header" + "name": "loop_statement" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ")" - } + "type": "SYMBOL", + "name": "for_statement" }, { "type": "SYMBOL", - "name": "compound_statement" - } - ] - }, - "for_header": { - "type": "SEQ", - "members": [ + "name": "while_statement" + }, { - "type": "CHOICE", + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "for_init" + "name": "func_call_statement" }, { - "type": "BLANK" + "type": "STRING", + "value": ";" } ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - }, - { - "type": "CHOICE", + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "expression" + "name": "variable_or_value_statement" }, { - "type": "BLANK" + "type": "STRING", + "value": ";" } ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - }, - { - "type": "CHOICE", + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "for_update" + "name": "break_statement" }, { - "type": "BLANK" + "type": "STRING", + "value": ";" } ] - } - ] - }, - "for_init": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "variable_statement" - }, - { - "type": "SYMBOL", - "name": "variable_updating_statement" - }, - { - "type": "SYMBOL", - "name": "func_call_statement" - } - ] - }, - "for_update": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "variable_updating_statement" - }, - { - "type": "SYMBOL", - "name": "func_call_statement" - } - ] - }, - "while_statement": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "while" - } - }, - { - "type": "SYMBOL", - "name": "expression" - }, - { - "type": "SYMBOL", - "name": "compound_statement" - } - ] - }, - "break_statement": { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "break" - } - }, - "break_if_statement": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "break" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "if" - } - }, - { - "type": "SYMBOL", - "name": "expression" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - } - ] - }, - "continue_statement": { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "continue" - } - }, - "continuing_statement": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "continuing" - } - }, - { - "type": "SYMBOL", - "name": "continuing_compound_statement" - } - ] - }, - "continuing_compound_statement": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "{" - } }, { - "type": "CHOICE", + "type": "SEQ", "members": [ { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "statement" - } + "type": "SYMBOL", + "name": "continue_statement" }, { - "type": "BLANK" + "type": "STRING", + "value": ";" } ] }, { - "type": "CHOICE", + "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "break_if_statement" + "type": "STRING", + "value": "discard" }, { - "type": "BLANK" + "type": "STRING", + "value": ";" } ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "}" - } - } - ] - }, - "return_statement": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "return" - } - }, - { - "type": "CHOICE", + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "expression" + "name": "variable_updating_statement" }, - { - "type": "BLANK" - } - ] - } - ] - }, - "func_call_statement": { - "type": "SYMBOL", - "name": "call_phrase" - }, - "const_assert_statement": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "const_assert" - } - }, - { - "type": "SYMBOL", - "name": "expression" - } - ] - }, - "statement": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "return_statement" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - } - ] - }, - { - "type": "SYMBOL", - "name": "if_statement" - }, - { - "type": "SYMBOL", - "name": "switch_statement" - }, - { - "type": "SYMBOL", - "name": "loop_statement" - }, - { - "type": "SYMBOL", - "name": "for_statement" - }, - { - "type": "SYMBOL", - "name": "while_statement" - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "func_call_statement" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - } - ] - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "variable_statement" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - } - ] - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "break_statement" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - } - ] - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "continue_statement" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - } - ] - }, - { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "discard" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - } - ] - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "variable_updating_statement" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - } - ] - }, - { - "type": "SYMBOL", - "name": "compound_statement" - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "const_assert_statement" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - } - ] - } - ] - }, - "variable_updating_statement": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "assignment_statement" - }, - { - "type": "SYMBOL", - "name": "increment_statement" - }, - { - "type": "SYMBOL", - "name": "decrement_statement" - } - ] - }, - "function_decl": { - "type": "SEQ", - "members": [ - { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "attribute" - } - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "SYMBOL", - "name": "function_header" - }, - { - "type": "SYMBOL", - "name": "compound_statement" - } - ] - }, - "function_header": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "fn" - } - }, - { - "type": "SYMBOL", - "name": "ident" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "(" - } - }, - { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "param_list" - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ")" - } - }, - { - "type": "CHOICE", - "members": [ - { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "->" - } - }, - { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "attribute" - } - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "SYMBOL", - "name": "type_specifier" - } - ] - }, - { - "type": "BLANK" - } - ] - } - ] - }, - "param_list": { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "param" - }, - { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } - }, - { - "type": "SYMBOL", - "name": "param" - } - ] - } - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "," - } - }, - { - "type": "BLANK" - } - ] - } - ] - }, - "param": { - "type": "SEQ", - "members": [ - { - "type": "CHOICE", - "members": [ - { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "attribute" - } - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "SYMBOL", - "name": "ident" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ":" - } - }, - { - "type": "SYMBOL", - "name": "type_specifier" - } - ] - }, - "enable_directive": { - "type": "SEQ", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "enable" - } - }, - { - "type": "SYMBOL", - "name": "extension_name" - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": ";" - } - } - ] - }, - "ident_pattern_token": { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "([_\\p{XID_Start}][\\p{XID_Continue}]+)|([\\p{XID_Start}])" - } - }, - "interpolation_type_name": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "perspective" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "linear" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "flat" - } - } - ] - }, - "interpolation_sample_name": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "center" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "centroid" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "sample" - } - } - ] - }, - "builtin_value_name": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "vertex_index" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "instance_index" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "position" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "front_facing" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "frag_depth" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "local_invocation_id" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "local_invocation_index" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "global_invocation_id" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "workgroup_id" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "num_workgroups" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "sample_index" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "sample_mask" - } - } - ] - }, - "access_mode": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "read" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "write" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "read_write" - } - } - ] - }, - "address_space": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "function" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "private" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "workgroup" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "uniform" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "storage" - } - } - ] - }, - "texel_format": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rgba8unorm" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rgba8snorm" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rgba8uint" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rgba8sint" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rgba16uint" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rgba16sint" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rgba16float" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "r32uint" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "r32sint" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "r32float" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rg32uint" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rg32sint" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rg32float" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rgba32uint" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rgba32sint" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "rgba32float" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "bgra8unorm" - } - } - ] - }, - "extension_name": { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "f16" - } - }, - "swizzle_name": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "/[rgba]/" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "/[rgba][rgba]/" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "/[rgba][rgba][rgba]/" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "/[rgba][rgba][rgba][rgba]/" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "/[xyzw]/" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "/[xyzw][xyzw]/" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "/[xyzw][xyzw][xyzw]/" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "/[xyzw][xyzw][xyzw][xyzw]/" - } - } - ] - }, - "_reserved": { - "type": "CHOICE", - "members": [ - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "CompileShader" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "ComputeShader" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "DomainShader" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "GeometryShader" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "Hullshader" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "NULL" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "Self" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "abstract" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "active" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "alignas" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "alignof" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "as" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "asm" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "asm_fragment" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "async" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "attribute" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "auto" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "await" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "become" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "bf16" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "binding_array" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "cast" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "catch" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "class" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "co_await" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "co_return" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "co_yield" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "coherent" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "column_major" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "common" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "compile" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "compile_fragment" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "concept" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "const_cast" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "consteval" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "constexpr" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "constinit" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "crate" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "debugger" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "decltype" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "delete" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "demote" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "demote_to_helper" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "do" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "dynamic_cast" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "enum" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "explicit" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "export" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "extends" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "extern" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "external" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "f64" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "fallthrough" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "filter" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "final" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "finally" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "friend" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "from" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "fxgroup" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "get" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "goto" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "groupshared" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "handle" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "highp" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "i16" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "i64" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "i8" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "impl" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "implements" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "import" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "inline" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "inout" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "instanceof" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "interface" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "layout" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "lowp" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "macro" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "macro_rules" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "match" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mediump" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "meta" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mod" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "module" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "move" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mut" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "mutable" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "namespace" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "new" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "nil" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "noexcept" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "noinline" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "nointerpolation" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "noperspective" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "null" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "nullptr" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "of" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "operator" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "package" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "packoffset" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "partition" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "pass" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "patch" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "pixelfragment" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "precise" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "precision" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "premerge" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "priv" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "protected" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "pub" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "public" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "quat" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "readonly" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "ref" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "regardless" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "register" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "reinterpret_cast" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "requires" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "resource" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "restrict" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "self" - } - }, - { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "set" - } + { + "type": "STRING", + "value": ";" + } + ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "shared" - } + "type": "SYMBOL", + "name": "compound_statement" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "signed" - } - }, + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "const_assert_statement" + }, + { + "type": "STRING", + "value": ";" + } + ] + } + ] + }, + "variable_updating_statement": { + "type": "CHOICE", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "sizeof" - } + "type": "SYMBOL", + "name": "assignment_statement" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "smooth" - } + "type": "SYMBOL", + "name": "increment_statement" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "snorm" - } - }, + "type": "SYMBOL", + "name": "decrement_statement" + } + ] + }, + "function_decl": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "static" + "type": "SYMBOL", + "name": "attribute" } }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "static_assert" - } + "type": "SYMBOL", + "name": "function_header" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "static_cast" - } - }, + "type": "SYMBOL", + "name": "compound_statement" + } + ] + }, + "function_header": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "std" - } + "type": "STRING", + "value": "fn" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "subroutine" - } + "type": "SYMBOL", + "name": "ident" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "super" - } + "type": "STRING", + "value": "(" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "target" - } + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "param_list" + }, + { + "type": "BLANK" + } + ] }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "template" - } + "type": "STRING", + "value": ")" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "this" - } - }, + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "->" + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute" + } + }, + { + "type": "SYMBOL", + "name": "template_elaborated_ident" + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "param_list": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "thread_local" - } + "type": "SYMBOL", + "name": "param" }, { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "throw" + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "param" + } + ] } }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "trait" - } - }, + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "param": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "try" + "type": "SYMBOL", + "name": "attribute" } }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "type" - } + "type": "SYMBOL", + "name": "ident" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "typedef" - } + "type": "STRING", + "value": ":" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "typeid" - } - }, + "type": "SYMBOL", + "name": "type_specifier" + } + ] + }, + "enable_directive": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "typename" - } + "type": "STRING", + "value": "enable" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "typeof" - } + "type": "SYMBOL", + "name": "enable_extension_list" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "u16" - } - }, + "type": "STRING", + "value": ";" + } + ] + }, + "enable_extension_list": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "u64" - } + "type": "SYMBOL", + "name": "enable_extension_name" }, { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "u8" + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "enable_extension_name" + } + ] } }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "union" - } - }, + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "requires_directive": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "unless" - } + "type": "STRING", + "value": "requires" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "unorm" - } + "type": "SYMBOL", + "name": "software_extension_list" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "unsafe" - } - }, + "type": "STRING", + "value": ";" + } + ] + }, + "software_extension_list": { + "type": "SEQ", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "unsized" - } + "type": "SYMBOL", + "name": "software_extension_name" }, { - "type": "TOKEN", + "type": "REPEAT", "content": { - "type": "STRING", - "value": "use" + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "software_extension_name" + } + ] } }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "using" - } - }, + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "enable_extension_name": { + "type": "SYMBOL", + "name": "ident_pattern_token" + }, + "software_extension_name": { + "type": "SYMBOL", + "name": "ident_pattern_token" + }, + "ident_pattern_token": { + "type": "PATTERN", + "value": "([_\\p{XID_Start}][\\p{XID_Continue}]+)|([\\p{XID_Start}])", + "flags": "u" + }, + "severity_control_name": { + "type": "SYMBOL", + "name": "ident_pattern_token" + }, + "swizzle_name": { + "type": "CHOICE", + "members": [ { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "varying" - } + "type": "PATTERN", + "value": "[rgba]" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "virtual" - } + "type": "PATTERN", + "value": "[rgba][rgba]" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "volatile" - } + "type": "PATTERN", + "value": "[rgba][rgba][rgba]" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "wgsl" - } + "type": "PATTERN", + "value": "[rgba][rgba][rgba][rgba]" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "where" - } + "type": "PATTERN", + "value": "[xyzw]" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "with" - } + "type": "PATTERN", + "value": "[xyzw][xyzw]" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "writeonly" - } + "type": "PATTERN", + "value": "[xyzw][xyzw][xyzw]" }, { - "type": "TOKEN", - "content": { - "type": "STRING", - "value": "yield" - } + "type": "PATTERN", + "value": "[xyzw][xyzw][xyzw][xyzw]" } ] }, "_comment": { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "\\/\\/.*" - } + "type": "PATTERN", + "value": "\\/\\/.*" }, "_blankspace": { - "type": "TOKEN", - "content": { - "type": "PATTERN", - "value": "[\\u0020\\u0009\\u000a\\u000b\\u000c\\u000d\\u0085\\u200e\\u200f\\u2028\\u2029]" - } + "type": "PATTERN", + "value": "[\\u0020\\u0009\\u000a\\u000b\\u000c\\u000d\\u0085\\u200e\\u200f\\u2028\\u2029]", + "flags": "u" } }, "extras": [ @@ -5838,9 +3571,7 @@ } ], "inline": [ - "global_decl", - "_reserved" + "global_decl" ], "supertypes": [] } - diff --git a/src/node-types.json b/src/node-types.json index 42c65f1..d3cb3ec 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -1,9 +1,4 @@ [ - { - "type": "access_mode", - "named": true, - "fields": {} - }, { "type": "additive_expression", "named": true, @@ -33,39 +28,30 @@ "fields": {} }, { - "type": "address_space", - "named": true, - "fields": {} - }, - { - "type": "argument_expression_list", + "type": "align_attr", "named": true, "fields": {}, "children": { "multiple": false, - "required": false, + "required": true, "types": [ { - "type": "expression_comma_list", + "type": "expression", "named": true } ] } }, { - "type": "array_type_specifier", + "type": "argument_expression_list", "named": true, "fields": {}, "children": { - "multiple": true, - "required": true, + "multiple": false, + "required": false, "types": [ { - "type": "element_count_expression", - "named": true - }, - { - "type": "type_specifier", + "type": "expression_comma_list", "named": true } ] @@ -94,37 +80,88 @@ ] } }, - { - "type": "attrib_end", - "named": true, - "fields": {} - }, { "type": "attribute", "named": true, "fields": {}, "children": { "multiple": true, - "required": false, + "required": true, "types": [ { - "type": "attrib_end", + "type": "align_attr", "named": true }, { - "type": "builtin_value_name", + "type": "argument_expression_list", "named": true }, { - "type": "expression", + "type": "binding_attr", + "named": true + }, + { + "type": "blend_src_attr", + "named": true + }, + { + "type": "builtin_attr", + "named": true + }, + { + "type": "compute_attr", + "named": true + }, + { + "type": "const_attr", + "named": true + }, + { + "type": "diagnostic_attr", + "named": true + }, + { + "type": "fragment_attr", + "named": true + }, + { + "type": "group_attr", + "named": true + }, + { + "type": "id_attr", + "named": true + }, + { + "type": "ident_pattern_token", + "named": true + }, + { + "type": "interpolate_attr", + "named": true + }, + { + "type": "invariant_attr", + "named": true + }, + { + "type": "location_attr", + "named": true + }, + { + "type": "must_use_attr", "named": true }, { - "type": "interpolation_sample_name", + "type": "size_attr", "named": true }, { - "type": "interpolation_type_name", + "type": "vertex_attr", + "named": true + }, + { + "type": "workgroup_size_attr", "named": true } ] @@ -187,6 +224,21 @@ ] } }, + { + "type": "binding_attr", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, { "type": "bitwise_expression", "named": true, @@ -214,6 +266,21 @@ ] } }, + { + "type": "blend_src_attr", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, { "type": "bool_literal", "named": true, @@ -240,12 +307,7 @@ "fields": {} }, { - "type": "builtin_value_name", - "named": true, - "fields": {} - }, - { - "type": "call_expression", + "type": "builtin_attr", "named": true, "fields": {}, "children": { @@ -253,53 +315,56 @@ "required": true, "types": [ { - "type": "call_phrase", + "type": "builtin_value_name", "named": true } ] } }, { - "type": "call_phrase", + "type": "builtin_value_name", "named": true, "fields": {}, "children": { - "multiple": true, + "multiple": false, "required": true, "types": [ { - "type": "argument_expression_list", - "named": true - }, - { - "type": "callable", + "type": "ident_pattern_token", "named": true } ] } }, { - "type": "callable", + "type": "call_expression", "named": true, "fields": {}, "children": { "multiple": false, - "required": false, + "required": true, "types": [ { - "type": "ident", - "named": true - }, - { - "type": "mat_prefix", + "type": "call_phrase", "named": true - }, + } + ] + } + }, + { + "type": "call_phrase", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ { - "type": "type_specifier_without_ident", + "type": "argument_expression_list", "named": true }, { - "type": "vec_prefix", + "type": "template_elaborated_ident", "named": true } ] @@ -394,6 +459,10 @@ "multiple": true, "required": false, "types": [ + { + "type": "attribute", + "named": true + }, { "type": "statement", "named": true @@ -401,6 +470,11 @@ ] } }, + { + "type": "compute_attr", + "named": true, + "fields": {} + }, { "type": "const_assert_statement", "named": true, @@ -416,6 +490,11 @@ ] } }, + { + "type": "const_attr", + "named": true, + "fields": {} + }, { "type": "continuing_compound_statement", "named": true, @@ -424,6 +503,10 @@ "multiple": true, "required": false, "types": [ + { + "type": "attribute", + "named": true + }, { "type": "break_if_statement", "named": true @@ -510,24 +593,79 @@ } }, { - "type": "depth_texture_type", + "type": "diagnostic_attr", "named": true, - "fields": {} + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "diagnostic_control", + "named": true + } + ] + } }, { - "type": "element_count_expression", + "type": "diagnostic_control", "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { - "type": "additive_expression", + "type": "diagnostic_rule_name", "named": true }, { - "type": "bitwise_expression", + "type": "severity_control_name", + "named": true + } + ] + } + }, + { + "type": "diagnostic_directive", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "diagnostic_control", + "named": true + } + ] + } + }, + { + "type": "diagnostic_name_token", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "ident_pattern_token", + "named": true + } + ] + } + }, + { + "type": "diagnostic_rule_name", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "diagnostic_name_token", "named": true } ] @@ -576,7 +714,37 @@ "required": true, "types": [ { - "type": "extension_name", + "type": "enable_extension_list", + "named": true + } + ] + } + }, + { + "type": "enable_extension_list", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "enable_extension_name", + "named": true + } + ] + } + }, + { + "type": "enable_extension_name", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "ident_pattern_token", "named": true } ] @@ -624,11 +792,6 @@ ] } }, - { - "type": "extension_name", - "named": true, - "fields": {} - }, { "type": "float_literal", "named": true, @@ -684,7 +847,7 @@ "named": true }, { - "type": "variable_statement", + "type": "variable_or_value_statement", "named": true }, { @@ -702,6 +865,10 @@ "multiple": true, "required": true, "types": [ + { + "type": "attribute", + "named": true + }, { "type": "compound_statement", "named": true @@ -732,6 +899,11 @@ ] } }, + { + "type": "fragment_attr", + "named": true, + "fields": {} + }, { "type": "func_call_statement", "named": true, @@ -791,45 +963,53 @@ "named": true }, { - "type": "type_specifier", + "type": "template_elaborated_ident", "named": true } ] } }, { - "type": "global_constant_decl", + "type": "global_directive", "named": true, "fields": {}, "children": { - "multiple": true, + "multiple": false, "required": true, "types": [ { - "type": "attribute", + "type": "diagnostic_directive", "named": true }, { - "type": "expression", + "type": "enable_directive", "named": true }, { - "type": "optionally_typed_ident", + "type": "requires_directive", "named": true } ] } }, { - "type": "global_directive", + "type": "global_value_decl", "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { - "type": "enable_directive", + "type": "attribute", + "named": true + }, + { + "type": "expression", + "named": true + }, + { + "type": "optionally_typed_ident", "named": true } ] @@ -858,11 +1038,41 @@ ] } }, + { + "type": "group_attr", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, { "type": "hex_float_literal", "named": true, "fields": {} }, + { + "type": "id_attr", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, { "type": "ident", "named": true, @@ -905,6 +1115,10 @@ "multiple": true, "required": true, "types": [ + { + "type": "attribute", + "named": true + }, { "type": "else_clause", "named": true @@ -955,12 +1169,56 @@ } }, { - "type": "interpolation_sample_name", + "type": "interpolate_attr", "named": true, - "fields": {} + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "interpolate_sampling_name", + "named": true + }, + { + "type": "interpolate_type_name", + "named": true + } + ] + } + }, + { + "type": "interpolate_sampling_name", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "ident_pattern_token", + "named": true + } + ] + } + }, + { + "type": "interpolate_type_name", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "ident_pattern_token", + "named": true + } + ] + } }, { - "type": "interpolation_type_name", + "type": "invariant_attr", "named": true, "fields": {} }, @@ -1010,6 +1268,21 @@ ] } }, + { + "type": "location_attr", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, { "type": "loop_statement", "named": true, @@ -1018,6 +1291,10 @@ "multiple": true, "required": false, "types": [ + { + "type": "attribute", + "named": true + }, { "type": "continuing_statement", "named": true @@ -1029,11 +1306,6 @@ ] } }, - { - "type": "mat_prefix", - "named": true, - "fields": {} - }, { "type": "member_ident", "named": true, @@ -1077,6 +1349,11 @@ "named": true, "fields": {} }, + { + "type": "must_use_attr", + "named": true, + "fields": {} + }, { "type": "optionally_typed_ident", "named": true, @@ -1154,17 +1431,13 @@ "named": true, "fields": {}, "children": { - "multiple": true, + "multiple": false, "required": true, "types": [ { "type": "call_expression", "named": true }, - { - "type": "ident", - "named": true - }, { "type": "literal", "named": true @@ -1174,7 +1447,7 @@ "named": true }, { - "type": "type_specifier", + "type": "template_elaborated_ident", "named": true } ] @@ -1196,29 +1469,49 @@ } }, { - "type": "return_statement", + "type": "requires_directive", "named": true, "fields": {}, "children": { "multiple": false, - "required": false, + "required": true, "types": [ { - "type": "expression", + "type": "software_extension_list", "named": true } ] } }, { - "type": "sampled_texture_type", + "type": "return_statement", "named": true, - "fields": {} + "fields": {}, + "children": { + "multiple": false, + "required": false, + "types": [ + { + "type": "expression", + "named": true + } + ] + } }, { - "type": "sampler_type", + "type": "severity_control_name", "named": true, - "fields": {} + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "ident_pattern_token", + "named": true + } + ] + } }, { "type": "shift_expression", @@ -1296,6 +1589,51 @@ ] } }, + { + "type": "size_attr", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, + { + "type": "software_extension_list", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "software_extension_name", + "named": true + } + ] + } + }, + { + "type": "software_extension_name", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "ident_pattern_token", + "named": true + } + ] + } + }, { "type": "statement", "named": true, @@ -1345,7 +1683,7 @@ "named": true }, { - "type": "variable_statement", + "type": "variable_or_value_statement", "named": true }, { @@ -1359,11 +1697,6 @@ ] } }, - { - "type": "storage_texture_type", - "named": true, - "fields": {} - }, { "type": "struct_body_decl", "named": true, @@ -1425,6 +1758,25 @@ "type": "switch_body", "named": true, "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "attribute", + "named": true + }, + { + "type": "switch_clause", + "named": true + } + ] + } + }, + { + "type": "switch_clause", + "named": true, + "fields": {}, "children": { "multiple": false, "required": true, @@ -1448,6 +1800,10 @@ "multiple": true, "required": true, "types": [ + { + "type": "attribute", + "named": true + }, { "type": "expression", "named": true @@ -1465,12 +1821,7 @@ "fields": {} }, { - "type": "texel_format", - "named": true, - "fields": {} - }, - { - "type": "texture_and_sampler_types", + "type": "template_arg_comma_list", "named": true, "fields": {}, "children": { @@ -1478,81 +1829,29 @@ "required": true, "types": [ { - "type": "access_mode", - "named": true - }, - { - "type": "depth_texture_type", - "named": true - }, - { - "type": "multisampled_texture_type", - "named": true - }, - { - "type": "sampled_texture_type", - "named": true - }, - { - "type": "sampler_type", - "named": true - }, - { - "type": "storage_texture_type", - "named": true - }, - { - "type": "texel_format", - "named": true - }, - { - "type": "type_specifier", + "type": "template_arg_expression", "named": true } ] } }, { - "type": "translation_unit", + "type": "template_arg_expression", "named": true, "fields": {}, "children": { - "multiple": true, - "required": false, + "multiple": false, + "required": true, "types": [ { - "type": "const_assert_statement", - "named": true - }, - { - "type": "function_decl", - "named": true - }, - { - "type": "global_constant_decl", - "named": true - }, - { - "type": "global_directive", - "named": true - }, - { - "type": "global_variable_decl", - "named": true - }, - { - "type": "struct_decl", - "named": true - }, - { - "type": "type_alias_decl", + "type": "expression", "named": true } ] } }, { - "type": "type_alias_decl", + "type": "template_elaborated_ident", "named": true, "fields": {}, "children": { @@ -1564,14 +1863,14 @@ "named": true }, { - "type": "type_specifier", + "type": "template_list", "named": true } ] } }, { - "type": "type_specifier", + "type": "template_list", "named": true, "fields": {}, "children": { @@ -1579,18 +1878,14 @@ "required": true, "types": [ { - "type": "ident", - "named": true - }, - { - "type": "type_specifier_without_ident", + "type": "template_arg_comma_list", "named": true } ] } }, { - "type": "type_specifier_without_ident", + "type": "translation_unit", "named": true, "fields": {}, "children": { @@ -1598,76 +1893,91 @@ "required": false, "types": [ { - "type": "access_mode", + "type": "const_assert_statement", "named": true }, { - "type": "address_space", + "type": "function_decl", "named": true }, { - "type": "array_type_specifier", + "type": "global_directive", "named": true }, { - "type": "mat_prefix", + "type": "global_value_decl", "named": true }, { - "type": "texture_and_sampler_types", + "type": "global_variable_decl", "named": true }, { - "type": "type_specifier", + "type": "struct_decl", "named": true }, { - "type": "vec_prefix", + "type": "type_alias_decl", "named": true } ] } }, { - "type": "unary_expression", + "type": "type_alias_decl", "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { - "type": "singular_expression", + "type": "ident", "named": true }, { - "type": "unary_expression", + "type": "type_specifier", "named": true } ] } }, { - "type": "variable_decl", + "type": "type_specifier", "named": true, "fields": {}, "children": { - "multiple": true, + "multiple": false, "required": true, "types": [ { - "type": "optionally_typed_ident", + "type": "template_elaborated_ident", + "named": true + } + ] + } + }, + { + "type": "unary_expression", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "singular_expression", "named": true }, { - "type": "variable_qualifier", + "type": "unary_expression", "named": true } ] } }, { - "type": "variable_qualifier", + "type": "variable_decl", "named": true, "fields": {}, "children": { @@ -1675,18 +1985,18 @@ "required": true, "types": [ { - "type": "access_mode", + "type": "optionally_typed_ident", "named": true }, { - "type": "address_space", + "type": "template_list", "named": true } ] } }, { - "type": "variable_statement", + "type": "variable_or_value_statement", "named": true, "fields": {}, "children": { @@ -1732,7 +2042,7 @@ } }, { - "type": "vec_prefix", + "type": "vertex_attr", "named": true, "fields": {} }, @@ -1744,6 +2054,10 @@ "multiple": true, "required": true, "types": [ + { + "type": "attribute", + "named": true + }, { "type": "compound_statement", "named": true @@ -1755,6 +2069,21 @@ ] } }, + { + "type": "workgroup_size_attr", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + } + }, { "type": "!", "named": false @@ -1843,38 +2172,6 @@ "type": "/=", "named": false }, - { - "type": "/[rgba]/", - "named": false - }, - { - "type": "/[rgba][rgba]/", - "named": false - }, - { - "type": "/[rgba][rgba][rgba]/", - "named": false - }, - { - "type": "/[rgba][rgba][rgba][rgba]/", - "named": false - }, - { - "type": "/[xyzw]/", - "named": false - }, - { - "type": "/[xyzw][xyzw]/", - "named": false - }, - { - "type": "/[xyzw][xyzw][xyzw]/", - "named": false - }, - { - "type": "/[xyzw][xyzw][xyzw][xyzw]/", - "named": false - }, { "type": ":", "named": false @@ -1895,34 +2192,6 @@ "type": "@", "named": false }, - { - "type": "CompileShader", - "named": false - }, - { - "type": "ComputeShader", - "named": false - }, - { - "type": "DomainShader", - "named": false - }, - { - "type": "GeometryShader", - "named": false - }, - { - "type": "Hullshader", - "named": false - }, - { - "type": "NULL", - "named": false - }, - { - "type": "Self", - "named": false - }, { "type": "[", "named": false @@ -1943,14 +2212,6 @@ "type": "_", "named": false }, - { - "type": "abstract", - "named": false - }, - { - "type": "active", - "named": false - }, { "type": "alias", "named": false @@ -1959,76 +2220,12 @@ "type": "align", "named": false }, - { - "type": "alignas", - "named": false - }, - { - "type": "alignof", - "named": false - }, - { - "type": "array", - "named": false - }, - { - "type": "as", - "named": false - }, - { - "type": "asm", - "named": false - }, - { - "type": "asm_fragment", - "named": false - }, - { - "type": "async", - "named": false - }, - { - "type": "atomic", - "named": false - }, - { - "type": "attribute", - "named": false - }, - { - "type": "auto", - "named": false - }, - { - "type": "await", - "named": false - }, - { - "type": "become", - "named": false - }, - { - "type": "bf16", - "named": false - }, - { - "type": "bgra8unorm", - "named": false - }, { "type": "binding", "named": false }, { - "type": "binding_array", - "named": false - }, - { - "type": "bitcast", - "named": false - }, - { - "type": "bool", + "type": "blend_src", "named": false }, { @@ -2044,1009 +2241,149 @@ "named": false }, { - "type": "cast", - "named": false - }, - { - "type": "catch", - "named": false - }, - { - "type": "center", - "named": false - }, - { - "type": "centroid", - "named": false - }, - { - "type": "class", - "named": false - }, - { - "type": "co_await", - "named": false - }, - { - "type": "co_return", + "type": "compute", "named": false }, { - "type": "co_yield", + "type": "const", "named": false }, { - "type": "coherent", + "type": "const_assert", "named": false }, { - "type": "column_major", - "named": false + "type": "continue_statement", + "named": true }, { - "type": "common", + "type": "continuing", "named": false }, { - "type": "compile", + "type": "default", "named": false }, { - "type": "compile_fragment", + "type": "diagnostic", "named": false }, { - "type": "compute", + "type": "discard", "named": false }, { - "type": "concept", + "type": "else", "named": false }, { - "type": "const", + "type": "enable", "named": false }, { - "type": "const_assert", + "type": "false", "named": false }, { - "type": "const_cast", + "type": "fn", "named": false }, { - "type": "consteval", + "type": "for", "named": false }, { - "type": "constexpr", + "type": "fragment", "named": false }, { - "type": "constinit", + "type": "group", "named": false }, { - "type": "continue_statement", + "type": "hex_int_literal", "named": true }, { - "type": "continuing", - "named": false - }, - { - "type": "crate", - "named": false - }, - { - "type": "debugger", - "named": false - }, - { - "type": "decltype", + "type": "id", "named": false }, { - "type": "default", - "named": false + "type": "ident_pattern_token", + "named": true }, { - "type": "delete", + "type": "if", "named": false }, { - "type": "demote", + "type": "interpolate", "named": false }, { - "type": "demote_to_helper", + "type": "invariant", "named": false }, { - "type": "discard", + "type": "let", "named": false }, { - "type": "do", + "type": "location", "named": false }, { - "type": "dynamic_cast", + "type": "loop", "named": false }, { - "type": "else", + "type": "must_use", "named": false }, { - "type": "enable", + "type": "override", "named": false }, { - "type": "enum", + "type": "requires", "named": false }, { - "type": "explicit", + "type": "return", "named": false }, { - "type": "export", + "type": "size", "named": false }, { - "type": "extends", + "type": "struct", "named": false }, { - "type": "extern", + "type": "switch", "named": false }, { - "type": "external", + "type": "true", "named": false }, { - "type": "f16", + "type": "var", "named": false }, { - "type": "f32", + "type": "vertex", "named": false }, { - "type": "f64", - "named": false - }, - { - "type": "fallthrough", - "named": false - }, - { - "type": "false", - "named": false - }, - { - "type": "filter", - "named": false - }, - { - "type": "final", - "named": false - }, - { - "type": "finally", - "named": false - }, - { - "type": "flat", - "named": false - }, - { - "type": "fn", - "named": false - }, - { - "type": "for", - "named": false - }, - { - "type": "frag_depth", - "named": false - }, - { - "type": "fragment", - "named": false - }, - { - "type": "friend", - "named": false - }, - { - "type": "from", - "named": false - }, - { - "type": "front_facing", - "named": false - }, - { - "type": "function", - "named": false - }, - { - "type": "fxgroup", - "named": false - }, - { - "type": "get", - "named": false - }, - { - "type": "global_invocation_id", - "named": false - }, - { - "type": "goto", - "named": false - }, - { - "type": "group", - "named": false - }, - { - "type": "groupshared", - "named": false - }, - { - "type": "handle", - "named": false - }, - { - "type": "hex_int_literal", - "named": true - }, - { - "type": "highp", - "named": false - }, - { - "type": "i16", - "named": false - }, - { - "type": "i32", - "named": false - }, - { - "type": "i64", - "named": false - }, - { - "type": "i8", - "named": false - }, - { - "type": "id", - "named": false - }, - { - "type": "ident_pattern_token", - "named": true - }, - { - "type": "if", - "named": false - }, - { - "type": "impl", - "named": false - }, - { - "type": "implements", - "named": false - }, - { - "type": "import", - "named": false - }, - { - "type": "inline", - "named": false - }, - { - "type": "inout", - "named": false - }, - { - "type": "instance_index", - "named": false - }, - { - "type": "instanceof", - "named": false - }, - { - "type": "interface", - "named": false - }, - { - "type": "interpolate", - "named": false - }, - { - "type": "invariant", - "named": false - }, - { - "type": "layout", - "named": false - }, - { - "type": "let", - "named": false - }, - { - "type": "linear", - "named": false - }, - { - "type": "local_invocation_id", - "named": false - }, - { - "type": "local_invocation_index", - "named": false - }, - { - "type": "location", - "named": false - }, - { - "type": "loop", - "named": false - }, - { - "type": "lowp", - "named": false - }, - { - "type": "macro", - "named": false - }, - { - "type": "macro_rules", - "named": false - }, - { - "type": "mat2x2", - "named": false - }, - { - "type": "mat2x3", - "named": false - }, - { - "type": "mat2x4", - "named": false - }, - { - "type": "mat3x2", - "named": false - }, - { - "type": "mat3x3", - "named": false - }, - { - "type": "mat3x4", - "named": false - }, - { - "type": "mat4x2", - "named": false - }, - { - "type": "mat4x3", - "named": false - }, - { - "type": "mat4x4", - "named": false - }, - { - "type": "match", - "named": false - }, - { - "type": "mediump", - "named": false - }, - { - "type": "meta", - "named": false - }, - { - "type": "mod", - "named": false - }, - { - "type": "module", - "named": false - }, - { - "type": "move", - "named": false - }, - { - "type": "multisampled_texture_type", - "named": true - }, - { - "type": "mut", - "named": false - }, - { - "type": "mutable", - "named": false - }, - { - "type": "namespace", - "named": false - }, - { - "type": "new", - "named": false - }, - { - "type": "nil", - "named": false - }, - { - "type": "noexcept", - "named": false - }, - { - "type": "noinline", - "named": false - }, - { - "type": "nointerpolation", - "named": false - }, - { - "type": "noperspective", - "named": false - }, - { - "type": "null", - "named": false - }, - { - "type": "nullptr", - "named": false - }, - { - "type": "num_workgroups", - "named": false - }, - { - "type": "of", - "named": false - }, - { - "type": "operator", - "named": false - }, - { - "type": "override", - "named": false - }, - { - "type": "package", - "named": false - }, - { - "type": "packoffset", - "named": false - }, - { - "type": "partition", - "named": false - }, - { - "type": "pass", - "named": false - }, - { - "type": "patch", - "named": false - }, - { - "type": "perspective", - "named": false - }, - { - "type": "pixelfragment", - "named": false - }, - { - "type": "position", - "named": false - }, - { - "type": "precise", - "named": false - }, - { - "type": "precision", - "named": false - }, - { - "type": "premerge", - "named": false - }, - { - "type": "priv", - "named": false - }, - { - "type": "private", - "named": false - }, - { - "type": "protected", - "named": false - }, - { - "type": "ptr", - "named": false - }, - { - "type": "pub", - "named": false - }, - { - "type": "public", - "named": false - }, - { - "type": "quat", - "named": false - }, - { - "type": "r32float", - "named": false - }, - { - "type": "r32sint", - "named": false - }, - { - "type": "r32uint", - "named": false - }, - { - "type": "read", - "named": false - }, - { - "type": "read_write", - "named": false - }, - { - "type": "readonly", - "named": false - }, - { - "type": "ref", - "named": false - }, - { - "type": "regardless", - "named": false - }, - { - "type": "register", - "named": false - }, - { - "type": "reinterpret_cast", - "named": false - }, - { - "type": "requires", - "named": false - }, - { - "type": "resource", - "named": false - }, - { - "type": "restrict", - "named": false - }, - { - "type": "return", - "named": false - }, - { - "type": "rg32float", - "named": false - }, - { - "type": "rg32sint", - "named": false - }, - { - "type": "rg32uint", - "named": false - }, - { - "type": "rgba16float", - "named": false - }, - { - "type": "rgba16sint", - "named": false - }, - { - "type": "rgba16uint", - "named": false - }, - { - "type": "rgba32float", - "named": false - }, - { - "type": "rgba32sint", - "named": false - }, - { - "type": "rgba32uint", - "named": false - }, - { - "type": "rgba8sint", - "named": false - }, - { - "type": "rgba8snorm", - "named": false - }, - { - "type": "rgba8uint", - "named": false - }, - { - "type": "rgba8unorm", - "named": false - }, - { - "type": "sample", - "named": false - }, - { - "type": "sample_index", - "named": false - }, - { - "type": "sample_mask", - "named": false - }, - { - "type": "sampler", - "named": false - }, - { - "type": "sampler_comparison", - "named": false - }, - { - "type": "self", - "named": false - }, - { - "type": "set", - "named": false - }, - { - "type": "shared", - "named": false - }, - { - "type": "signed", - "named": false - }, - { - "type": "size", - "named": false - }, - { - "type": "sizeof", - "named": false - }, - { - "type": "smooth", - "named": false - }, - { - "type": "snorm", - "named": false - }, - { - "type": "static", - "named": false - }, - { - "type": "static_assert", - "named": false - }, - { - "type": "static_cast", - "named": false - }, - { - "type": "std", - "named": false - }, - { - "type": "storage", - "named": false - }, - { - "type": "struct", - "named": false - }, - { - "type": "subroutine", - "named": false - }, - { - "type": "super", - "named": false - }, - { - "type": "switch", - "named": false - }, - { - "type": "target", - "named": false - }, - { - "type": "template", - "named": false - }, - { - "type": "texture_1d", - "named": false - }, - { - "type": "texture_2d", - "named": false - }, - { - "type": "texture_2d_array", - "named": false - }, - { - "type": "texture_3d", - "named": false - }, - { - "type": "texture_cube", - "named": false - }, - { - "type": "texture_cube_array", - "named": false - }, - { - "type": "texture_depth_2d", - "named": false - }, - { - "type": "texture_depth_2d_array", - "named": false - }, - { - "type": "texture_depth_cube", - "named": false - }, - { - "type": "texture_depth_cube_array", - "named": false - }, - { - "type": "texture_depth_multisampled_2d", - "named": false - }, - { - "type": "texture_storage_1d", - "named": false - }, - { - "type": "texture_storage_2d", - "named": false - }, - { - "type": "texture_storage_2d_array", - "named": false - }, - { - "type": "texture_storage_3d", - "named": false - }, - { - "type": "this", - "named": false - }, - { - "type": "thread_local", - "named": false - }, - { - "type": "throw", - "named": false - }, - { - "type": "trait", - "named": false - }, - { - "type": "true", - "named": false - }, - { - "type": "try", - "named": false - }, - { - "type": "type", - "named": false - }, - { - "type": "typedef", - "named": false - }, - { - "type": "typeid", - "named": false - }, - { - "type": "typename", - "named": false - }, - { - "type": "typeof", - "named": false - }, - { - "type": "u16", - "named": false - }, - { - "type": "u32", - "named": false - }, - { - "type": "u64", - "named": false - }, - { - "type": "u8", - "named": false - }, - { - "type": "uniform", - "named": false - }, - { - "type": "union", - "named": false - }, - { - "type": "unless", - "named": false - }, - { - "type": "unorm", - "named": false - }, - { - "type": "unsafe", - "named": false - }, - { - "type": "unsized", - "named": false - }, - { - "type": "use", - "named": false - }, - { - "type": "using", - "named": false - }, - { - "type": "var", - "named": false - }, - { - "type": "varying", - "named": false - }, - { - "type": "vec2", - "named": false - }, - { - "type": "vec3", - "named": false - }, - { - "type": "vec4", - "named": false - }, - { - "type": "vertex", - "named": false - }, - { - "type": "vertex_index", - "named": false - }, - { - "type": "virtual", - "named": false - }, - { - "type": "volatile", - "named": false - }, - { - "type": "wgsl", - "named": false - }, - { - "type": "where", - "named": false - }, - { - "type": "while", - "named": false - }, - { - "type": "with", - "named": false - }, - { - "type": "workgroup", - "named": false - }, - { - "type": "workgroup_id", + "type": "while", "named": false }, { "type": "workgroup_size", "named": false }, - { - "type": "write", - "named": false - }, - { - "type": "writeonly", - "named": false - }, - { - "type": "yield", - "named": false - }, { "type": "{", "named": false diff --git a/src/parser.c b/src/parser.c deleted file mode 100644 index 304cdfb..0000000 --- a/src/parser.c +++ /dev/null @@ -1,33182 +0,0 @@ -#include - -#if defined(__GNUC__) || defined(__clang__) -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wmissing-field-initializers" -#endif - -#define LANGUAGE_VERSION 14 -#define STATE_COUNT 675 -#define LARGE_STATE_COUNT 93 -#define SYMBOL_COUNT 467 -#define ALIAS_COUNT 0 -#define TOKEN_COUNT 355 -#define EXTERNAL_TOKEN_COUNT 13 -#define FIELD_COUNT 0 -#define MAX_ALIAS_SEQUENCE_LENGTH 9 -#define PRODUCTION_ID_COUNT 1 - -enum { - sym_ident_pattern_token = 1, - anon_sym_SEMI = 2, - anon_sym_true = 3, - anon_sym_false = 4, - aux_sym_decimal_int_literal_token1 = 5, - aux_sym_decimal_int_literal_token2 = 6, - sym_hex_int_literal = 7, - aux_sym_decimal_float_literal_token1 = 8, - aux_sym_decimal_float_literal_token2 = 9, - aux_sym_decimal_float_literal_token3 = 10, - aux_sym_decimal_float_literal_token4 = 11, - aux_sym_decimal_float_literal_token5 = 12, - aux_sym_hex_float_literal_token1 = 13, - aux_sym_hex_float_literal_token2 = 14, - aux_sym_hex_float_literal_token3 = 15, - anon_sym_AT = 16, - anon_sym_align = 17, - anon_sym_LPAREN = 18, - anon_sym_binding = 19, - anon_sym_builtin = 20, - anon_sym_const = 21, - anon_sym_group = 22, - anon_sym_id = 23, - anon_sym_interpolate = 24, - anon_sym_COMMA = 25, - anon_sym_invariant = 26, - anon_sym_location = 27, - anon_sym_size = 28, - anon_sym_workgroup_size = 29, - anon_sym_vertex = 30, - anon_sym_fragment = 31, - anon_sym_compute = 32, - anon_sym_RPAREN = 33, - anon_sym_array = 34, - anon_sym_struct = 35, - anon_sym_LBRACE = 36, - anon_sym_RBRACE = 37, - anon_sym_COLON = 38, - anon_sym_sampler = 39, - anon_sym_sampler_comparison = 40, - anon_sym_texture_1d = 41, - anon_sym_texture_2d = 42, - anon_sym_texture_2d_array = 43, - anon_sym_texture_3d = 44, - anon_sym_texture_cube = 45, - anon_sym_texture_cube_array = 46, - sym_multisampled_texture_type = 47, - anon_sym_texture_storage_1d = 48, - anon_sym_texture_storage_2d = 49, - anon_sym_texture_storage_2d_array = 50, - anon_sym_texture_storage_3d = 51, - anon_sym_texture_depth_2d = 52, - anon_sym_texture_depth_2d_array = 53, - anon_sym_texture_depth_cube = 54, - anon_sym_texture_depth_cube_array = 55, - anon_sym_texture_depth_multisampled_2d = 56, - anon_sym_alias = 57, - anon_sym_EQ = 58, - anon_sym_bool = 59, - anon_sym_f32 = 60, - anon_sym_f16 = 61, - anon_sym_i32 = 62, - anon_sym_u32 = 63, - anon_sym_ptr = 64, - anon_sym_atomic = 65, - anon_sym_vec2 = 66, - anon_sym_vec3 = 67, - anon_sym_vec4 = 68, - anon_sym_mat2x2 = 69, - anon_sym_mat2x3 = 70, - anon_sym_mat2x4 = 71, - anon_sym_mat3x2 = 72, - anon_sym_mat3x3 = 73, - anon_sym_mat3x4 = 74, - anon_sym_mat4x2 = 75, - anon_sym_mat4x3 = 76, - anon_sym_mat4x4 = 77, - anon_sym_let = 78, - anon_sym_var = 79, - anon_sym_override = 80, - anon_sym_bitcast = 81, - anon_sym_LBRACK = 82, - anon_sym_RBRACK = 83, - anon_sym_DOT = 84, - anon_sym_DASH = 85, - anon_sym_BANG = 86, - anon_sym_TILDE = 87, - anon_sym_STAR = 88, - anon_sym_AMP = 89, - anon_sym_SLASH = 90, - anon_sym_PERCENT = 91, - anon_sym_PLUS = 92, - anon_sym_EQ_EQ = 93, - anon_sym_BANG_EQ = 94, - anon_sym_AMP_AMP = 95, - anon_sym_PIPE_PIPE = 96, - anon_sym_PIPE = 97, - anon_sym_CARET = 98, - anon_sym__ = 99, - anon_sym_PLUS_EQ = 100, - anon_sym_DASH_EQ = 101, - anon_sym_STAR_EQ = 102, - anon_sym_SLASH_EQ = 103, - anon_sym_PERCENT_EQ = 104, - anon_sym_AMP_EQ = 105, - anon_sym_PIPE_EQ = 106, - anon_sym_CARET_EQ = 107, - anon_sym_PLUS_PLUS = 108, - anon_sym_DASH_DASH = 109, - anon_sym_if = 110, - anon_sym_else = 111, - anon_sym_switch = 112, - anon_sym_case = 113, - anon_sym_default = 114, - anon_sym_loop = 115, - anon_sym_for = 116, - anon_sym_while = 117, - anon_sym_break = 118, - sym_continue_statement = 119, - anon_sym_continuing = 120, - anon_sym_return = 121, - anon_sym_const_assert = 122, - anon_sym_discard = 123, - anon_sym_fn = 124, - anon_sym_DASH_GT = 125, - anon_sym_enable = 126, - anon_sym_perspective = 127, - anon_sym_linear = 128, - anon_sym_flat = 129, - anon_sym_center = 130, - anon_sym_centroid = 131, - anon_sym_sample = 132, - anon_sym_vertex_index = 133, - anon_sym_instance_index = 134, - anon_sym_position = 135, - anon_sym_front_facing = 136, - anon_sym_frag_depth = 137, - anon_sym_local_invocation_id = 138, - anon_sym_local_invocation_index = 139, - anon_sym_global_invocation_id = 140, - anon_sym_workgroup_id = 141, - anon_sym_num_workgroups = 142, - anon_sym_sample_index = 143, - anon_sym_sample_mask = 144, - anon_sym_read = 145, - anon_sym_write = 146, - anon_sym_read_write = 147, - anon_sym_function = 148, - anon_sym_private = 149, - anon_sym_workgroup = 150, - anon_sym_uniform = 151, - anon_sym_storage = 152, - anon_sym_rgba8unorm = 153, - anon_sym_rgba8snorm = 154, - anon_sym_rgba8uint = 155, - anon_sym_rgba8sint = 156, - anon_sym_rgba16uint = 157, - anon_sym_rgba16sint = 158, - anon_sym_rgba16float = 159, - anon_sym_r32uint = 160, - anon_sym_r32sint = 161, - anon_sym_r32float = 162, - anon_sym_rg32uint = 163, - anon_sym_rg32sint = 164, - anon_sym_rg32float = 165, - anon_sym_rgba32uint = 166, - anon_sym_rgba32sint = 167, - anon_sym_rgba32float = 168, - anon_sym_bgra8unorm = 169, - anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH = 170, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH = 171, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH = 172, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH = 173, - anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH = 174, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH = 175, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH = 176, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH = 177, - anon_sym_CompileShader = 178, - anon_sym_ComputeShader = 179, - anon_sym_DomainShader = 180, - anon_sym_GeometryShader = 181, - anon_sym_Hullshader = 182, - anon_sym_NULL = 183, - anon_sym_Self = 184, - anon_sym_abstract = 185, - anon_sym_active = 186, - anon_sym_alignas = 187, - anon_sym_alignof = 188, - anon_sym_as = 189, - anon_sym_asm = 190, - anon_sym_asm_fragment = 191, - anon_sym_async = 192, - anon_sym_attribute = 193, - anon_sym_auto = 194, - anon_sym_await = 195, - anon_sym_become = 196, - anon_sym_bf16 = 197, - anon_sym_binding_array = 198, - anon_sym_cast = 199, - anon_sym_catch = 200, - anon_sym_class = 201, - anon_sym_co_await = 202, - anon_sym_co_return = 203, - anon_sym_co_yield = 204, - anon_sym_coherent = 205, - anon_sym_column_major = 206, - anon_sym_common = 207, - anon_sym_compile = 208, - anon_sym_compile_fragment = 209, - anon_sym_concept = 210, - anon_sym_const_cast = 211, - anon_sym_consteval = 212, - anon_sym_constexpr = 213, - anon_sym_constinit = 214, - anon_sym_crate = 215, - anon_sym_debugger = 216, - anon_sym_decltype = 217, - anon_sym_delete = 218, - anon_sym_demote = 219, - anon_sym_demote_to_helper = 220, - anon_sym_do = 221, - anon_sym_dynamic_cast = 222, - anon_sym_enum = 223, - anon_sym_explicit = 224, - anon_sym_export = 225, - anon_sym_extends = 226, - anon_sym_extern = 227, - anon_sym_external = 228, - anon_sym_f64 = 229, - anon_sym_fallthrough = 230, - anon_sym_filter = 231, - anon_sym_final = 232, - anon_sym_finally = 233, - anon_sym_friend = 234, - anon_sym_from = 235, - anon_sym_fxgroup = 236, - anon_sym_get = 237, - anon_sym_goto = 238, - anon_sym_groupshared = 239, - anon_sym_handle = 240, - anon_sym_highp = 241, - anon_sym_i16 = 242, - anon_sym_i64 = 243, - anon_sym_i8 = 244, - anon_sym_impl = 245, - anon_sym_implements = 246, - anon_sym_import = 247, - anon_sym_inline = 248, - anon_sym_inout = 249, - anon_sym_instanceof = 250, - anon_sym_interface = 251, - anon_sym_layout = 252, - anon_sym_lowp = 253, - anon_sym_macro = 254, - anon_sym_macro_rules = 255, - anon_sym_match = 256, - anon_sym_mediump = 257, - anon_sym_meta = 258, - anon_sym_mod = 259, - anon_sym_module = 260, - anon_sym_move = 261, - anon_sym_mut = 262, - anon_sym_mutable = 263, - anon_sym_namespace = 264, - anon_sym_new = 265, - anon_sym_nil = 266, - anon_sym_noexcept = 267, - anon_sym_noinline = 268, - anon_sym_nointerpolation = 269, - anon_sym_noperspective = 270, - anon_sym_null = 271, - anon_sym_nullptr = 272, - anon_sym_of = 273, - anon_sym_operator = 274, - anon_sym_package = 275, - anon_sym_packoffset = 276, - anon_sym_partition = 277, - anon_sym_pass = 278, - anon_sym_patch = 279, - anon_sym_pixelfragment = 280, - anon_sym_precise = 281, - anon_sym_precision = 282, - anon_sym_premerge = 283, - anon_sym_priv = 284, - anon_sym_protected = 285, - anon_sym_pub = 286, - anon_sym_public = 287, - anon_sym_quat = 288, - anon_sym_readonly = 289, - anon_sym_ref = 290, - anon_sym_regardless = 291, - anon_sym_register = 292, - anon_sym_reinterpret_cast = 293, - anon_sym_requires = 294, - anon_sym_resource = 295, - anon_sym_restrict = 296, - anon_sym_self = 297, - anon_sym_set = 298, - anon_sym_shared = 299, - anon_sym_signed = 300, - anon_sym_sizeof = 301, - anon_sym_smooth = 302, - anon_sym_snorm = 303, - anon_sym_static = 304, - anon_sym_static_assert = 305, - anon_sym_static_cast = 306, - anon_sym_std = 307, - anon_sym_subroutine = 308, - anon_sym_super = 309, - anon_sym_target = 310, - anon_sym_template = 311, - anon_sym_this = 312, - anon_sym_thread_local = 313, - anon_sym_throw = 314, - anon_sym_trait = 315, - anon_sym_try = 316, - anon_sym_type = 317, - anon_sym_typedef = 318, - anon_sym_typeid = 319, - anon_sym_typename = 320, - anon_sym_typeof = 321, - anon_sym_u16 = 322, - anon_sym_u64 = 323, - anon_sym_u8 = 324, - anon_sym_union = 325, - anon_sym_unless = 326, - anon_sym_unorm = 327, - anon_sym_unsafe = 328, - anon_sym_unsized = 329, - anon_sym_use = 330, - anon_sym_using = 331, - anon_sym_varying = 332, - anon_sym_virtual = 333, - anon_sym_volatile = 334, - anon_sym_wgsl = 335, - anon_sym_where = 336, - anon_sym_with = 337, - anon_sym_writeonly = 338, - anon_sym_yield = 339, - sym__comment = 340, - sym__blankspace = 341, - sym__block_comment = 342, - sym__disambiguate_template = 343, - sym__template_args_start = 344, - sym__template_args_end = 345, - sym__less_than = 346, - sym__less_than_equal = 347, - sym__shift_left = 348, - sym__shift_left_assign = 349, - sym__greater_than = 350, - sym__greater_than_equal = 351, - sym__shift_right = 352, - sym__shift_right_assign = 353, - sym__error_sentinel = 354, - sym_translation_unit = 355, - sym_global_directive = 356, - sym_bool_literal = 357, - sym_int_literal = 358, - sym_decimal_int_literal = 359, - sym_float_literal = 360, - sym_decimal_float_literal = 361, - sym_hex_float_literal = 362, - sym_literal = 363, - sym_ident = 364, - sym_member_ident = 365, - sym_attribute = 366, - sym_attrib_end = 367, - sym_array_type_specifier = 368, - sym_element_count_expression = 369, - sym_struct_decl = 370, - sym_struct_body_decl = 371, - sym_struct_member = 372, - sym_texture_and_sampler_types = 373, - sym_sampler_type = 374, - sym_sampled_texture_type = 375, - sym_storage_texture_type = 376, - sym_depth_texture_type = 377, - sym_type_alias_decl = 378, - sym_type_specifier = 379, - sym_type_specifier_without_ident = 380, - sym_vec_prefix = 381, - sym_mat_prefix = 382, - sym_variable_statement = 383, - sym_variable_decl = 384, - sym_optionally_typed_ident = 385, - sym_variable_qualifier = 386, - sym_global_variable_decl = 387, - sym_global_constant_decl = 388, - sym_primary_expression = 389, - sym_call_expression = 390, - sym_call_phrase = 391, - sym_callable = 392, - sym_paren_expression = 393, - sym_argument_expression_list = 394, - sym_expression_comma_list = 395, - sym_component_or_swizzle_specifier = 396, - sym_unary_expression = 397, - sym_singular_expression = 398, - sym_lhs_expression = 399, - sym_core_lhs_expression = 400, - sym_multiplicative_expression = 401, - sym_multiplicative_operator = 402, - sym_additive_expression = 403, - sym_additive_operator = 404, - sym_shift_expression = 405, - sym_relational_expression = 406, - sym_short_circuit_and_expression = 407, - sym_short_circuit_or_expression = 408, - sym_binary_or_expression = 409, - sym_binary_and_expression = 410, - sym_binary_xor_expression = 411, - sym_bitwise_expression = 412, - sym_expression = 413, - sym_compound_statement = 414, - sym_assignment_statement = 415, - sym_compound_assignment_operator = 416, - sym_increment_statement = 417, - sym_decrement_statement = 418, - sym_if_statement = 419, - sym_if_clause = 420, - sym_else_if_clause = 421, - sym_else_clause = 422, - sym_switch_statement = 423, - sym_switch_body = 424, - sym_case_clause = 425, - sym_default_alone_clause = 426, - sym_case_selectors = 427, - sym_case_selector = 428, - sym_loop_statement = 429, - sym_for_statement = 430, - sym_for_header = 431, - sym_for_init = 432, - sym_for_update = 433, - sym_while_statement = 434, - sym_break_statement = 435, - sym_break_if_statement = 436, - sym_continuing_statement = 437, - sym_continuing_compound_statement = 438, - sym_return_statement = 439, - sym_func_call_statement = 440, - sym_const_assert_statement = 441, - sym_statement = 442, - sym_variable_updating_statement = 443, - sym_function_decl = 444, - sym_function_header = 445, - sym_param_list = 446, - sym_param = 447, - sym_enable_directive = 448, - sym_interpolation_type_name = 449, - sym_interpolation_sample_name = 450, - sym_builtin_value_name = 451, - sym_access_mode = 452, - sym_address_space = 453, - sym_texel_format = 454, - sym_extension_name = 455, - sym_swizzle_name = 456, - aux_sym_translation_unit_repeat1 = 457, - aux_sym_translation_unit_repeat2 = 458, - aux_sym_struct_body_decl_repeat1 = 459, - aux_sym_struct_member_repeat1 = 460, - aux_sym_expression_comma_list_repeat1 = 461, - aux_sym_compound_statement_repeat1 = 462, - aux_sym_if_statement_repeat1 = 463, - aux_sym_switch_statement_repeat1 = 464, - aux_sym_case_selectors_repeat1 = 465, - aux_sym_param_list_repeat1 = 466, -}; - -static const char * const ts_symbol_names[] = { - [ts_builtin_sym_end] = "end", - [sym_ident_pattern_token] = "ident_pattern_token", - [anon_sym_SEMI] = ";", - [anon_sym_true] = "true", - [anon_sym_false] = "false", - [aux_sym_decimal_int_literal_token1] = "decimal_int_literal_token1", - [aux_sym_decimal_int_literal_token2] = "decimal_int_literal_token2", - [sym_hex_int_literal] = "hex_int_literal", - [aux_sym_decimal_float_literal_token1] = "decimal_float_literal_token1", - [aux_sym_decimal_float_literal_token2] = "decimal_float_literal_token2", - [aux_sym_decimal_float_literal_token3] = "decimal_float_literal_token3", - [aux_sym_decimal_float_literal_token4] = "decimal_float_literal_token4", - [aux_sym_decimal_float_literal_token5] = "decimal_float_literal_token5", - [aux_sym_hex_float_literal_token1] = "hex_float_literal_token1", - [aux_sym_hex_float_literal_token2] = "hex_float_literal_token2", - [aux_sym_hex_float_literal_token3] = "hex_float_literal_token3", - [anon_sym_AT] = "@", - [anon_sym_align] = "align", - [anon_sym_LPAREN] = "(", - [anon_sym_binding] = "binding", - [anon_sym_builtin] = "builtin", - [anon_sym_const] = "const", - [anon_sym_group] = "group", - [anon_sym_id] = "id", - [anon_sym_interpolate] = "interpolate", - [anon_sym_COMMA] = ",", - [anon_sym_invariant] = "invariant", - [anon_sym_location] = "location", - [anon_sym_size] = "size", - [anon_sym_workgroup_size] = "workgroup_size", - [anon_sym_vertex] = "vertex", - [anon_sym_fragment] = "fragment", - [anon_sym_compute] = "compute", - [anon_sym_RPAREN] = ")", - [anon_sym_array] = "array", - [anon_sym_struct] = "struct", - [anon_sym_LBRACE] = "{", - [anon_sym_RBRACE] = "}", - [anon_sym_COLON] = ":", - [anon_sym_sampler] = "sampler", - [anon_sym_sampler_comparison] = "sampler_comparison", - [anon_sym_texture_1d] = "texture_1d", - [anon_sym_texture_2d] = "texture_2d", - [anon_sym_texture_2d_array] = "texture_2d_array", - [anon_sym_texture_3d] = "texture_3d", - [anon_sym_texture_cube] = "texture_cube", - [anon_sym_texture_cube_array] = "texture_cube_array", - [sym_multisampled_texture_type] = "multisampled_texture_type", - [anon_sym_texture_storage_1d] = "texture_storage_1d", - [anon_sym_texture_storage_2d] = "texture_storage_2d", - [anon_sym_texture_storage_2d_array] = "texture_storage_2d_array", - [anon_sym_texture_storage_3d] = "texture_storage_3d", - [anon_sym_texture_depth_2d] = "texture_depth_2d", - [anon_sym_texture_depth_2d_array] = "texture_depth_2d_array", - [anon_sym_texture_depth_cube] = "texture_depth_cube", - [anon_sym_texture_depth_cube_array] = "texture_depth_cube_array", - [anon_sym_texture_depth_multisampled_2d] = "texture_depth_multisampled_2d", - [anon_sym_alias] = "alias", - [anon_sym_EQ] = "=", - [anon_sym_bool] = "bool", - [anon_sym_f32] = "f32", - [anon_sym_f16] = "f16", - [anon_sym_i32] = "i32", - [anon_sym_u32] = "u32", - [anon_sym_ptr] = "ptr", - [anon_sym_atomic] = "atomic", - [anon_sym_vec2] = "vec2", - [anon_sym_vec3] = "vec3", - [anon_sym_vec4] = "vec4", - [anon_sym_mat2x2] = "mat2x2", - [anon_sym_mat2x3] = "mat2x3", - [anon_sym_mat2x4] = "mat2x4", - [anon_sym_mat3x2] = "mat3x2", - [anon_sym_mat3x3] = "mat3x3", - [anon_sym_mat3x4] = "mat3x4", - [anon_sym_mat4x2] = "mat4x2", - [anon_sym_mat4x3] = "mat4x3", - [anon_sym_mat4x4] = "mat4x4", - [anon_sym_let] = "let", - [anon_sym_var] = "var", - [anon_sym_override] = "override", - [anon_sym_bitcast] = "bitcast", - [anon_sym_LBRACK] = "[", - [anon_sym_RBRACK] = "]", - [anon_sym_DOT] = ".", - [anon_sym_DASH] = "-", - [anon_sym_BANG] = "!", - [anon_sym_TILDE] = "~", - [anon_sym_STAR] = "*", - [anon_sym_AMP] = "&", - [anon_sym_SLASH] = "/", - [anon_sym_PERCENT] = "%", - [anon_sym_PLUS] = "+", - [anon_sym_EQ_EQ] = "==", - [anon_sym_BANG_EQ] = "!=", - [anon_sym_AMP_AMP] = "&&", - [anon_sym_PIPE_PIPE] = "||", - [anon_sym_PIPE] = "|", - [anon_sym_CARET] = "^", - [anon_sym__] = "_", - [anon_sym_PLUS_EQ] = "+=", - [anon_sym_DASH_EQ] = "-=", - [anon_sym_STAR_EQ] = "*=", - [anon_sym_SLASH_EQ] = "/=", - [anon_sym_PERCENT_EQ] = "%=", - [anon_sym_AMP_EQ] = "&=", - [anon_sym_PIPE_EQ] = "|=", - [anon_sym_CARET_EQ] = "^=", - [anon_sym_PLUS_PLUS] = "++", - [anon_sym_DASH_DASH] = "--", - [anon_sym_if] = "if", - [anon_sym_else] = "else", - [anon_sym_switch] = "switch", - [anon_sym_case] = "case", - [anon_sym_default] = "default", - [anon_sym_loop] = "loop", - [anon_sym_for] = "for", - [anon_sym_while] = "while", - [anon_sym_break] = "break", - [sym_continue_statement] = "continue_statement", - [anon_sym_continuing] = "continuing", - [anon_sym_return] = "return", - [anon_sym_const_assert] = "const_assert", - [anon_sym_discard] = "discard", - [anon_sym_fn] = "fn", - [anon_sym_DASH_GT] = "->", - [anon_sym_enable] = "enable", - [anon_sym_perspective] = "perspective", - [anon_sym_linear] = "linear", - [anon_sym_flat] = "flat", - [anon_sym_center] = "center", - [anon_sym_centroid] = "centroid", - [anon_sym_sample] = "sample", - [anon_sym_vertex_index] = "vertex_index", - [anon_sym_instance_index] = "instance_index", - [anon_sym_position] = "position", - [anon_sym_front_facing] = "front_facing", - [anon_sym_frag_depth] = "frag_depth", - [anon_sym_local_invocation_id] = "local_invocation_id", - [anon_sym_local_invocation_index] = "local_invocation_index", - [anon_sym_global_invocation_id] = "global_invocation_id", - [anon_sym_workgroup_id] = "workgroup_id", - [anon_sym_num_workgroups] = "num_workgroups", - [anon_sym_sample_index] = "sample_index", - [anon_sym_sample_mask] = "sample_mask", - [anon_sym_read] = "read", - [anon_sym_write] = "write", - [anon_sym_read_write] = "read_write", - [anon_sym_function] = "function", - [anon_sym_private] = "private", - [anon_sym_workgroup] = "workgroup", - [anon_sym_uniform] = "uniform", - [anon_sym_storage] = "storage", - [anon_sym_rgba8unorm] = "rgba8unorm", - [anon_sym_rgba8snorm] = "rgba8snorm", - [anon_sym_rgba8uint] = "rgba8uint", - [anon_sym_rgba8sint] = "rgba8sint", - [anon_sym_rgba16uint] = "rgba16uint", - [anon_sym_rgba16sint] = "rgba16sint", - [anon_sym_rgba16float] = "rgba16float", - [anon_sym_r32uint] = "r32uint", - [anon_sym_r32sint] = "r32sint", - [anon_sym_r32float] = "r32float", - [anon_sym_rg32uint] = "rg32uint", - [anon_sym_rg32sint] = "rg32sint", - [anon_sym_rg32float] = "rg32float", - [anon_sym_rgba32uint] = "rgba32uint", - [anon_sym_rgba32sint] = "rgba32sint", - [anon_sym_rgba32float] = "rgba32float", - [anon_sym_bgra8unorm] = "bgra8unorm", - [anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH] = "/[rgba]/", - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = "/[rgba][rgba]/", - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = "/[rgba][rgba][rgba]/", - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = "/[rgba][rgba][rgba][rgba]/", - [anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH] = "/[xyzw]/", - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = "/[xyzw][xyzw]/", - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = "/[xyzw][xyzw][xyzw]/", - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = "/[xyzw][xyzw][xyzw][xyzw]/", - [anon_sym_CompileShader] = "CompileShader", - [anon_sym_ComputeShader] = "ComputeShader", - [anon_sym_DomainShader] = "DomainShader", - [anon_sym_GeometryShader] = "GeometryShader", - [anon_sym_Hullshader] = "Hullshader", - [anon_sym_NULL] = "NULL", - [anon_sym_Self] = "Self", - [anon_sym_abstract] = "abstract", - [anon_sym_active] = "active", - [anon_sym_alignas] = "alignas", - [anon_sym_alignof] = "alignof", - [anon_sym_as] = "as", - [anon_sym_asm] = "asm", - [anon_sym_asm_fragment] = "asm_fragment", - [anon_sym_async] = "async", - [anon_sym_attribute] = "attribute", - [anon_sym_auto] = "auto", - [anon_sym_await] = "await", - [anon_sym_become] = "become", - [anon_sym_bf16] = "bf16", - [anon_sym_binding_array] = "binding_array", - [anon_sym_cast] = "cast", - [anon_sym_catch] = "catch", - [anon_sym_class] = "class", - [anon_sym_co_await] = "co_await", - [anon_sym_co_return] = "co_return", - [anon_sym_co_yield] = "co_yield", - [anon_sym_coherent] = "coherent", - [anon_sym_column_major] = "column_major", - [anon_sym_common] = "common", - [anon_sym_compile] = "compile", - [anon_sym_compile_fragment] = "compile_fragment", - [anon_sym_concept] = "concept", - [anon_sym_const_cast] = "const_cast", - [anon_sym_consteval] = "consteval", - [anon_sym_constexpr] = "constexpr", - [anon_sym_constinit] = "constinit", - [anon_sym_crate] = "crate", - [anon_sym_debugger] = "debugger", - [anon_sym_decltype] = "decltype", - [anon_sym_delete] = "delete", - [anon_sym_demote] = "demote", - [anon_sym_demote_to_helper] = "demote_to_helper", - [anon_sym_do] = "do", - [anon_sym_dynamic_cast] = "dynamic_cast", - [anon_sym_enum] = "enum", - [anon_sym_explicit] = "explicit", - [anon_sym_export] = "export", - [anon_sym_extends] = "extends", - [anon_sym_extern] = "extern", - [anon_sym_external] = "external", - [anon_sym_f64] = "f64", - [anon_sym_fallthrough] = "fallthrough", - [anon_sym_filter] = "filter", - [anon_sym_final] = "final", - [anon_sym_finally] = "finally", - [anon_sym_friend] = "friend", - [anon_sym_from] = "from", - [anon_sym_fxgroup] = "fxgroup", - [anon_sym_get] = "get", - [anon_sym_goto] = "goto", - [anon_sym_groupshared] = "groupshared", - [anon_sym_handle] = "handle", - [anon_sym_highp] = "highp", - [anon_sym_i16] = "i16", - [anon_sym_i64] = "i64", - [anon_sym_i8] = "i8", - [anon_sym_impl] = "impl", - [anon_sym_implements] = "implements", - [anon_sym_import] = "import", - [anon_sym_inline] = "inline", - [anon_sym_inout] = "inout", - [anon_sym_instanceof] = "instanceof", - [anon_sym_interface] = "interface", - [anon_sym_layout] = "layout", - [anon_sym_lowp] = "lowp", - [anon_sym_macro] = "macro", - [anon_sym_macro_rules] = "macro_rules", - [anon_sym_match] = "match", - [anon_sym_mediump] = "mediump", - [anon_sym_meta] = "meta", - [anon_sym_mod] = "mod", - [anon_sym_module] = "module", - [anon_sym_move] = "move", - [anon_sym_mut] = "mut", - [anon_sym_mutable] = "mutable", - [anon_sym_namespace] = "namespace", - [anon_sym_new] = "new", - [anon_sym_nil] = "nil", - [anon_sym_noexcept] = "noexcept", - [anon_sym_noinline] = "noinline", - [anon_sym_nointerpolation] = "nointerpolation", - [anon_sym_noperspective] = "noperspective", - [anon_sym_null] = "null", - [anon_sym_nullptr] = "nullptr", - [anon_sym_of] = "of", - [anon_sym_operator] = "operator", - [anon_sym_package] = "package", - [anon_sym_packoffset] = "packoffset", - [anon_sym_partition] = "partition", - [anon_sym_pass] = "pass", - [anon_sym_patch] = "patch", - [anon_sym_pixelfragment] = "pixelfragment", - [anon_sym_precise] = "precise", - [anon_sym_precision] = "precision", - [anon_sym_premerge] = "premerge", - [anon_sym_priv] = "priv", - [anon_sym_protected] = "protected", - [anon_sym_pub] = "pub", - [anon_sym_public] = "public", - [anon_sym_quat] = "quat", - [anon_sym_readonly] = "readonly", - [anon_sym_ref] = "ref", - [anon_sym_regardless] = "regardless", - [anon_sym_register] = "register", - [anon_sym_reinterpret_cast] = "reinterpret_cast", - [anon_sym_requires] = "requires", - [anon_sym_resource] = "resource", - [anon_sym_restrict] = "restrict", - [anon_sym_self] = "self", - [anon_sym_set] = "set", - [anon_sym_shared] = "shared", - [anon_sym_signed] = "signed", - [anon_sym_sizeof] = "sizeof", - [anon_sym_smooth] = "smooth", - [anon_sym_snorm] = "snorm", - [anon_sym_static] = "static", - [anon_sym_static_assert] = "static_assert", - [anon_sym_static_cast] = "static_cast", - [anon_sym_std] = "std", - [anon_sym_subroutine] = "subroutine", - [anon_sym_super] = "super", - [anon_sym_target] = "target", - [anon_sym_template] = "template", - [anon_sym_this] = "this", - [anon_sym_thread_local] = "thread_local", - [anon_sym_throw] = "throw", - [anon_sym_trait] = "trait", - [anon_sym_try] = "try", - [anon_sym_type] = "type", - [anon_sym_typedef] = "typedef", - [anon_sym_typeid] = "typeid", - [anon_sym_typename] = "typename", - [anon_sym_typeof] = "typeof", - [anon_sym_u16] = "u16", - [anon_sym_u64] = "u64", - [anon_sym_u8] = "u8", - [anon_sym_union] = "union", - [anon_sym_unless] = "unless", - [anon_sym_unorm] = "unorm", - [anon_sym_unsafe] = "unsafe", - [anon_sym_unsized] = "unsized", - [anon_sym_use] = "use", - [anon_sym_using] = "using", - [anon_sym_varying] = "varying", - [anon_sym_virtual] = "virtual", - [anon_sym_volatile] = "volatile", - [anon_sym_wgsl] = "wgsl", - [anon_sym_where] = "where", - [anon_sym_with] = "with", - [anon_sym_writeonly] = "writeonly", - [anon_sym_yield] = "yield", - [sym__comment] = "_comment", - [sym__blankspace] = "_blankspace", - [sym__block_comment] = "_block_comment", - [sym__disambiguate_template] = "_disambiguate_template", - [sym__template_args_start] = "_template_args_start", - [sym__template_args_end] = "_template_args_end", - [sym__less_than] = "_less_than", - [sym__less_than_equal] = "_less_than_equal", - [sym__shift_left] = "_shift_left", - [sym__shift_left_assign] = "_shift_left_assign", - [sym__greater_than] = "_greater_than", - [sym__greater_than_equal] = "_greater_than_equal", - [sym__shift_right] = "_shift_right", - [sym__shift_right_assign] = "_shift_right_assign", - [sym__error_sentinel] = "_error_sentinel", - [sym_translation_unit] = "translation_unit", - [sym_global_directive] = "global_directive", - [sym_bool_literal] = "bool_literal", - [sym_int_literal] = "int_literal", - [sym_decimal_int_literal] = "decimal_int_literal", - [sym_float_literal] = "float_literal", - [sym_decimal_float_literal] = "decimal_float_literal", - [sym_hex_float_literal] = "hex_float_literal", - [sym_literal] = "literal", - [sym_ident] = "ident", - [sym_member_ident] = "member_ident", - [sym_attribute] = "attribute", - [sym_attrib_end] = "attrib_end", - [sym_array_type_specifier] = "array_type_specifier", - [sym_element_count_expression] = "element_count_expression", - [sym_struct_decl] = "struct_decl", - [sym_struct_body_decl] = "struct_body_decl", - [sym_struct_member] = "struct_member", - [sym_texture_and_sampler_types] = "texture_and_sampler_types", - [sym_sampler_type] = "sampler_type", - [sym_sampled_texture_type] = "sampled_texture_type", - [sym_storage_texture_type] = "storage_texture_type", - [sym_depth_texture_type] = "depth_texture_type", - [sym_type_alias_decl] = "type_alias_decl", - [sym_type_specifier] = "type_specifier", - [sym_type_specifier_without_ident] = "type_specifier_without_ident", - [sym_vec_prefix] = "vec_prefix", - [sym_mat_prefix] = "mat_prefix", - [sym_variable_statement] = "variable_statement", - [sym_variable_decl] = "variable_decl", - [sym_optionally_typed_ident] = "optionally_typed_ident", - [sym_variable_qualifier] = "variable_qualifier", - [sym_global_variable_decl] = "global_variable_decl", - [sym_global_constant_decl] = "global_constant_decl", - [sym_primary_expression] = "primary_expression", - [sym_call_expression] = "call_expression", - [sym_call_phrase] = "call_phrase", - [sym_callable] = "callable", - [sym_paren_expression] = "paren_expression", - [sym_argument_expression_list] = "argument_expression_list", - [sym_expression_comma_list] = "expression_comma_list", - [sym_component_or_swizzle_specifier] = "component_or_swizzle_specifier", - [sym_unary_expression] = "unary_expression", - [sym_singular_expression] = "singular_expression", - [sym_lhs_expression] = "lhs_expression", - [sym_core_lhs_expression] = "core_lhs_expression", - [sym_multiplicative_expression] = "multiplicative_expression", - [sym_multiplicative_operator] = "multiplicative_operator", - [sym_additive_expression] = "additive_expression", - [sym_additive_operator] = "additive_operator", - [sym_shift_expression] = "shift_expression", - [sym_relational_expression] = "relational_expression", - [sym_short_circuit_and_expression] = "short_circuit_and_expression", - [sym_short_circuit_or_expression] = "short_circuit_or_expression", - [sym_binary_or_expression] = "binary_or_expression", - [sym_binary_and_expression] = "binary_and_expression", - [sym_binary_xor_expression] = "binary_xor_expression", - [sym_bitwise_expression] = "bitwise_expression", - [sym_expression] = "expression", - [sym_compound_statement] = "compound_statement", - [sym_assignment_statement] = "assignment_statement", - [sym_compound_assignment_operator] = "compound_assignment_operator", - [sym_increment_statement] = "increment_statement", - [sym_decrement_statement] = "decrement_statement", - [sym_if_statement] = "if_statement", - [sym_if_clause] = "if_clause", - [sym_else_if_clause] = "else_if_clause", - [sym_else_clause] = "else_clause", - [sym_switch_statement] = "switch_statement", - [sym_switch_body] = "switch_body", - [sym_case_clause] = "case_clause", - [sym_default_alone_clause] = "default_alone_clause", - [sym_case_selectors] = "case_selectors", - [sym_case_selector] = "case_selector", - [sym_loop_statement] = "loop_statement", - [sym_for_statement] = "for_statement", - [sym_for_header] = "for_header", - [sym_for_init] = "for_init", - [sym_for_update] = "for_update", - [sym_while_statement] = "while_statement", - [sym_break_statement] = "break_statement", - [sym_break_if_statement] = "break_if_statement", - [sym_continuing_statement] = "continuing_statement", - [sym_continuing_compound_statement] = "continuing_compound_statement", - [sym_return_statement] = "return_statement", - [sym_func_call_statement] = "func_call_statement", - [sym_const_assert_statement] = "const_assert_statement", - [sym_statement] = "statement", - [sym_variable_updating_statement] = "variable_updating_statement", - [sym_function_decl] = "function_decl", - [sym_function_header] = "function_header", - [sym_param_list] = "param_list", - [sym_param] = "param", - [sym_enable_directive] = "enable_directive", - [sym_interpolation_type_name] = "interpolation_type_name", - [sym_interpolation_sample_name] = "interpolation_sample_name", - [sym_builtin_value_name] = "builtin_value_name", - [sym_access_mode] = "access_mode", - [sym_address_space] = "address_space", - [sym_texel_format] = "texel_format", - [sym_extension_name] = "extension_name", - [sym_swizzle_name] = "swizzle_name", - [aux_sym_translation_unit_repeat1] = "translation_unit_repeat1", - [aux_sym_translation_unit_repeat2] = "translation_unit_repeat2", - [aux_sym_struct_body_decl_repeat1] = "struct_body_decl_repeat1", - [aux_sym_struct_member_repeat1] = "struct_member_repeat1", - [aux_sym_expression_comma_list_repeat1] = "expression_comma_list_repeat1", - [aux_sym_compound_statement_repeat1] = "compound_statement_repeat1", - [aux_sym_if_statement_repeat1] = "if_statement_repeat1", - [aux_sym_switch_statement_repeat1] = "switch_statement_repeat1", - [aux_sym_case_selectors_repeat1] = "case_selectors_repeat1", - [aux_sym_param_list_repeat1] = "param_list_repeat1", -}; - -static const TSSymbol ts_symbol_map[] = { - [ts_builtin_sym_end] = ts_builtin_sym_end, - [sym_ident_pattern_token] = sym_ident_pattern_token, - [anon_sym_SEMI] = anon_sym_SEMI, - [anon_sym_true] = anon_sym_true, - [anon_sym_false] = anon_sym_false, - [aux_sym_decimal_int_literal_token1] = aux_sym_decimal_int_literal_token1, - [aux_sym_decimal_int_literal_token2] = aux_sym_decimal_int_literal_token2, - [sym_hex_int_literal] = sym_hex_int_literal, - [aux_sym_decimal_float_literal_token1] = aux_sym_decimal_float_literal_token1, - [aux_sym_decimal_float_literal_token2] = aux_sym_decimal_float_literal_token2, - [aux_sym_decimal_float_literal_token3] = aux_sym_decimal_float_literal_token3, - [aux_sym_decimal_float_literal_token4] = aux_sym_decimal_float_literal_token4, - [aux_sym_decimal_float_literal_token5] = aux_sym_decimal_float_literal_token5, - [aux_sym_hex_float_literal_token1] = aux_sym_hex_float_literal_token1, - [aux_sym_hex_float_literal_token2] = aux_sym_hex_float_literal_token2, - [aux_sym_hex_float_literal_token3] = aux_sym_hex_float_literal_token3, - [anon_sym_AT] = anon_sym_AT, - [anon_sym_align] = anon_sym_align, - [anon_sym_LPAREN] = anon_sym_LPAREN, - [anon_sym_binding] = anon_sym_binding, - [anon_sym_builtin] = anon_sym_builtin, - [anon_sym_const] = anon_sym_const, - [anon_sym_group] = anon_sym_group, - [anon_sym_id] = anon_sym_id, - [anon_sym_interpolate] = anon_sym_interpolate, - [anon_sym_COMMA] = anon_sym_COMMA, - [anon_sym_invariant] = anon_sym_invariant, - [anon_sym_location] = anon_sym_location, - [anon_sym_size] = anon_sym_size, - [anon_sym_workgroup_size] = anon_sym_workgroup_size, - [anon_sym_vertex] = anon_sym_vertex, - [anon_sym_fragment] = anon_sym_fragment, - [anon_sym_compute] = anon_sym_compute, - [anon_sym_RPAREN] = anon_sym_RPAREN, - [anon_sym_array] = anon_sym_array, - [anon_sym_struct] = anon_sym_struct, - [anon_sym_LBRACE] = anon_sym_LBRACE, - [anon_sym_RBRACE] = anon_sym_RBRACE, - [anon_sym_COLON] = anon_sym_COLON, - [anon_sym_sampler] = anon_sym_sampler, - [anon_sym_sampler_comparison] = anon_sym_sampler_comparison, - [anon_sym_texture_1d] = anon_sym_texture_1d, - [anon_sym_texture_2d] = anon_sym_texture_2d, - [anon_sym_texture_2d_array] = anon_sym_texture_2d_array, - [anon_sym_texture_3d] = anon_sym_texture_3d, - [anon_sym_texture_cube] = anon_sym_texture_cube, - [anon_sym_texture_cube_array] = anon_sym_texture_cube_array, - [sym_multisampled_texture_type] = sym_multisampled_texture_type, - [anon_sym_texture_storage_1d] = anon_sym_texture_storage_1d, - [anon_sym_texture_storage_2d] = anon_sym_texture_storage_2d, - [anon_sym_texture_storage_2d_array] = anon_sym_texture_storage_2d_array, - [anon_sym_texture_storage_3d] = anon_sym_texture_storage_3d, - [anon_sym_texture_depth_2d] = anon_sym_texture_depth_2d, - [anon_sym_texture_depth_2d_array] = anon_sym_texture_depth_2d_array, - [anon_sym_texture_depth_cube] = anon_sym_texture_depth_cube, - [anon_sym_texture_depth_cube_array] = anon_sym_texture_depth_cube_array, - [anon_sym_texture_depth_multisampled_2d] = anon_sym_texture_depth_multisampled_2d, - [anon_sym_alias] = anon_sym_alias, - [anon_sym_EQ] = anon_sym_EQ, - [anon_sym_bool] = anon_sym_bool, - [anon_sym_f32] = anon_sym_f32, - [anon_sym_f16] = anon_sym_f16, - [anon_sym_i32] = anon_sym_i32, - [anon_sym_u32] = anon_sym_u32, - [anon_sym_ptr] = anon_sym_ptr, - [anon_sym_atomic] = anon_sym_atomic, - [anon_sym_vec2] = anon_sym_vec2, - [anon_sym_vec3] = anon_sym_vec3, - [anon_sym_vec4] = anon_sym_vec4, - [anon_sym_mat2x2] = anon_sym_mat2x2, - [anon_sym_mat2x3] = anon_sym_mat2x3, - [anon_sym_mat2x4] = anon_sym_mat2x4, - [anon_sym_mat3x2] = anon_sym_mat3x2, - [anon_sym_mat3x3] = anon_sym_mat3x3, - [anon_sym_mat3x4] = anon_sym_mat3x4, - [anon_sym_mat4x2] = anon_sym_mat4x2, - [anon_sym_mat4x3] = anon_sym_mat4x3, - [anon_sym_mat4x4] = anon_sym_mat4x4, - [anon_sym_let] = anon_sym_let, - [anon_sym_var] = anon_sym_var, - [anon_sym_override] = anon_sym_override, - [anon_sym_bitcast] = anon_sym_bitcast, - [anon_sym_LBRACK] = anon_sym_LBRACK, - [anon_sym_RBRACK] = anon_sym_RBRACK, - [anon_sym_DOT] = anon_sym_DOT, - [anon_sym_DASH] = anon_sym_DASH, - [anon_sym_BANG] = anon_sym_BANG, - [anon_sym_TILDE] = anon_sym_TILDE, - [anon_sym_STAR] = anon_sym_STAR, - [anon_sym_AMP] = anon_sym_AMP, - [anon_sym_SLASH] = anon_sym_SLASH, - [anon_sym_PERCENT] = anon_sym_PERCENT, - [anon_sym_PLUS] = anon_sym_PLUS, - [anon_sym_EQ_EQ] = anon_sym_EQ_EQ, - [anon_sym_BANG_EQ] = anon_sym_BANG_EQ, - [anon_sym_AMP_AMP] = anon_sym_AMP_AMP, - [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, - [anon_sym_PIPE] = anon_sym_PIPE, - [anon_sym_CARET] = anon_sym_CARET, - [anon_sym__] = anon_sym__, - [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, - [anon_sym_DASH_EQ] = anon_sym_DASH_EQ, - [anon_sym_STAR_EQ] = anon_sym_STAR_EQ, - [anon_sym_SLASH_EQ] = anon_sym_SLASH_EQ, - [anon_sym_PERCENT_EQ] = anon_sym_PERCENT_EQ, - [anon_sym_AMP_EQ] = anon_sym_AMP_EQ, - [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ, - [anon_sym_CARET_EQ] = anon_sym_CARET_EQ, - [anon_sym_PLUS_PLUS] = anon_sym_PLUS_PLUS, - [anon_sym_DASH_DASH] = anon_sym_DASH_DASH, - [anon_sym_if] = anon_sym_if, - [anon_sym_else] = anon_sym_else, - [anon_sym_switch] = anon_sym_switch, - [anon_sym_case] = anon_sym_case, - [anon_sym_default] = anon_sym_default, - [anon_sym_loop] = anon_sym_loop, - [anon_sym_for] = anon_sym_for, - [anon_sym_while] = anon_sym_while, - [anon_sym_break] = anon_sym_break, - [sym_continue_statement] = sym_continue_statement, - [anon_sym_continuing] = anon_sym_continuing, - [anon_sym_return] = anon_sym_return, - [anon_sym_const_assert] = anon_sym_const_assert, - [anon_sym_discard] = anon_sym_discard, - [anon_sym_fn] = anon_sym_fn, - [anon_sym_DASH_GT] = anon_sym_DASH_GT, - [anon_sym_enable] = anon_sym_enable, - [anon_sym_perspective] = anon_sym_perspective, - [anon_sym_linear] = anon_sym_linear, - [anon_sym_flat] = anon_sym_flat, - [anon_sym_center] = anon_sym_center, - [anon_sym_centroid] = anon_sym_centroid, - [anon_sym_sample] = anon_sym_sample, - [anon_sym_vertex_index] = anon_sym_vertex_index, - [anon_sym_instance_index] = anon_sym_instance_index, - [anon_sym_position] = anon_sym_position, - [anon_sym_front_facing] = anon_sym_front_facing, - [anon_sym_frag_depth] = anon_sym_frag_depth, - [anon_sym_local_invocation_id] = anon_sym_local_invocation_id, - [anon_sym_local_invocation_index] = anon_sym_local_invocation_index, - [anon_sym_global_invocation_id] = anon_sym_global_invocation_id, - [anon_sym_workgroup_id] = anon_sym_workgroup_id, - [anon_sym_num_workgroups] = anon_sym_num_workgroups, - [anon_sym_sample_index] = anon_sym_sample_index, - [anon_sym_sample_mask] = anon_sym_sample_mask, - [anon_sym_read] = anon_sym_read, - [anon_sym_write] = anon_sym_write, - [anon_sym_read_write] = anon_sym_read_write, - [anon_sym_function] = anon_sym_function, - [anon_sym_private] = anon_sym_private, - [anon_sym_workgroup] = anon_sym_workgroup, - [anon_sym_uniform] = anon_sym_uniform, - [anon_sym_storage] = anon_sym_storage, - [anon_sym_rgba8unorm] = anon_sym_rgba8unorm, - [anon_sym_rgba8snorm] = anon_sym_rgba8snorm, - [anon_sym_rgba8uint] = anon_sym_rgba8uint, - [anon_sym_rgba8sint] = anon_sym_rgba8sint, - [anon_sym_rgba16uint] = anon_sym_rgba16uint, - [anon_sym_rgba16sint] = anon_sym_rgba16sint, - [anon_sym_rgba16float] = anon_sym_rgba16float, - [anon_sym_r32uint] = anon_sym_r32uint, - [anon_sym_r32sint] = anon_sym_r32sint, - [anon_sym_r32float] = anon_sym_r32float, - [anon_sym_rg32uint] = anon_sym_rg32uint, - [anon_sym_rg32sint] = anon_sym_rg32sint, - [anon_sym_rg32float] = anon_sym_rg32float, - [anon_sym_rgba32uint] = anon_sym_rgba32uint, - [anon_sym_rgba32sint] = anon_sym_rgba32sint, - [anon_sym_rgba32float] = anon_sym_rgba32float, - [anon_sym_bgra8unorm] = anon_sym_bgra8unorm, - [anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH] = anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH, - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - [anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH] = anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH, - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - [anon_sym_CompileShader] = anon_sym_CompileShader, - [anon_sym_ComputeShader] = anon_sym_ComputeShader, - [anon_sym_DomainShader] = anon_sym_DomainShader, - [anon_sym_GeometryShader] = anon_sym_GeometryShader, - [anon_sym_Hullshader] = anon_sym_Hullshader, - [anon_sym_NULL] = anon_sym_NULL, - [anon_sym_Self] = anon_sym_Self, - [anon_sym_abstract] = anon_sym_abstract, - [anon_sym_active] = anon_sym_active, - [anon_sym_alignas] = anon_sym_alignas, - [anon_sym_alignof] = anon_sym_alignof, - [anon_sym_as] = anon_sym_as, - [anon_sym_asm] = anon_sym_asm, - [anon_sym_asm_fragment] = anon_sym_asm_fragment, - [anon_sym_async] = anon_sym_async, - [anon_sym_attribute] = anon_sym_attribute, - [anon_sym_auto] = anon_sym_auto, - [anon_sym_await] = anon_sym_await, - [anon_sym_become] = anon_sym_become, - [anon_sym_bf16] = anon_sym_bf16, - [anon_sym_binding_array] = anon_sym_binding_array, - [anon_sym_cast] = anon_sym_cast, - [anon_sym_catch] = anon_sym_catch, - [anon_sym_class] = anon_sym_class, - [anon_sym_co_await] = anon_sym_co_await, - [anon_sym_co_return] = anon_sym_co_return, - [anon_sym_co_yield] = anon_sym_co_yield, - [anon_sym_coherent] = anon_sym_coherent, - [anon_sym_column_major] = anon_sym_column_major, - [anon_sym_common] = anon_sym_common, - [anon_sym_compile] = anon_sym_compile, - [anon_sym_compile_fragment] = anon_sym_compile_fragment, - [anon_sym_concept] = anon_sym_concept, - [anon_sym_const_cast] = anon_sym_const_cast, - [anon_sym_consteval] = anon_sym_consteval, - [anon_sym_constexpr] = anon_sym_constexpr, - [anon_sym_constinit] = anon_sym_constinit, - [anon_sym_crate] = anon_sym_crate, - [anon_sym_debugger] = anon_sym_debugger, - [anon_sym_decltype] = anon_sym_decltype, - [anon_sym_delete] = anon_sym_delete, - [anon_sym_demote] = anon_sym_demote, - [anon_sym_demote_to_helper] = anon_sym_demote_to_helper, - [anon_sym_do] = anon_sym_do, - [anon_sym_dynamic_cast] = anon_sym_dynamic_cast, - [anon_sym_enum] = anon_sym_enum, - [anon_sym_explicit] = anon_sym_explicit, - [anon_sym_export] = anon_sym_export, - [anon_sym_extends] = anon_sym_extends, - [anon_sym_extern] = anon_sym_extern, - [anon_sym_external] = anon_sym_external, - [anon_sym_f64] = anon_sym_f64, - [anon_sym_fallthrough] = anon_sym_fallthrough, - [anon_sym_filter] = anon_sym_filter, - [anon_sym_final] = anon_sym_final, - [anon_sym_finally] = anon_sym_finally, - [anon_sym_friend] = anon_sym_friend, - [anon_sym_from] = anon_sym_from, - [anon_sym_fxgroup] = anon_sym_fxgroup, - [anon_sym_get] = anon_sym_get, - [anon_sym_goto] = anon_sym_goto, - [anon_sym_groupshared] = anon_sym_groupshared, - [anon_sym_handle] = anon_sym_handle, - [anon_sym_highp] = anon_sym_highp, - [anon_sym_i16] = anon_sym_i16, - [anon_sym_i64] = anon_sym_i64, - [anon_sym_i8] = anon_sym_i8, - [anon_sym_impl] = anon_sym_impl, - [anon_sym_implements] = anon_sym_implements, - [anon_sym_import] = anon_sym_import, - [anon_sym_inline] = anon_sym_inline, - [anon_sym_inout] = anon_sym_inout, - [anon_sym_instanceof] = anon_sym_instanceof, - [anon_sym_interface] = anon_sym_interface, - [anon_sym_layout] = anon_sym_layout, - [anon_sym_lowp] = anon_sym_lowp, - [anon_sym_macro] = anon_sym_macro, - [anon_sym_macro_rules] = anon_sym_macro_rules, - [anon_sym_match] = anon_sym_match, - [anon_sym_mediump] = anon_sym_mediump, - [anon_sym_meta] = anon_sym_meta, - [anon_sym_mod] = anon_sym_mod, - [anon_sym_module] = anon_sym_module, - [anon_sym_move] = anon_sym_move, - [anon_sym_mut] = anon_sym_mut, - [anon_sym_mutable] = anon_sym_mutable, - [anon_sym_namespace] = anon_sym_namespace, - [anon_sym_new] = anon_sym_new, - [anon_sym_nil] = anon_sym_nil, - [anon_sym_noexcept] = anon_sym_noexcept, - [anon_sym_noinline] = anon_sym_noinline, - [anon_sym_nointerpolation] = anon_sym_nointerpolation, - [anon_sym_noperspective] = anon_sym_noperspective, - [anon_sym_null] = anon_sym_null, - [anon_sym_nullptr] = anon_sym_nullptr, - [anon_sym_of] = anon_sym_of, - [anon_sym_operator] = anon_sym_operator, - [anon_sym_package] = anon_sym_package, - [anon_sym_packoffset] = anon_sym_packoffset, - [anon_sym_partition] = anon_sym_partition, - [anon_sym_pass] = anon_sym_pass, - [anon_sym_patch] = anon_sym_patch, - [anon_sym_pixelfragment] = anon_sym_pixelfragment, - [anon_sym_precise] = anon_sym_precise, - [anon_sym_precision] = anon_sym_precision, - [anon_sym_premerge] = anon_sym_premerge, - [anon_sym_priv] = anon_sym_priv, - [anon_sym_protected] = anon_sym_protected, - [anon_sym_pub] = anon_sym_pub, - [anon_sym_public] = anon_sym_public, - [anon_sym_quat] = anon_sym_quat, - [anon_sym_readonly] = anon_sym_readonly, - [anon_sym_ref] = anon_sym_ref, - [anon_sym_regardless] = anon_sym_regardless, - [anon_sym_register] = anon_sym_register, - [anon_sym_reinterpret_cast] = anon_sym_reinterpret_cast, - [anon_sym_requires] = anon_sym_requires, - [anon_sym_resource] = anon_sym_resource, - [anon_sym_restrict] = anon_sym_restrict, - [anon_sym_self] = anon_sym_self, - [anon_sym_set] = anon_sym_set, - [anon_sym_shared] = anon_sym_shared, - [anon_sym_signed] = anon_sym_signed, - [anon_sym_sizeof] = anon_sym_sizeof, - [anon_sym_smooth] = anon_sym_smooth, - [anon_sym_snorm] = anon_sym_snorm, - [anon_sym_static] = anon_sym_static, - [anon_sym_static_assert] = anon_sym_static_assert, - [anon_sym_static_cast] = anon_sym_static_cast, - [anon_sym_std] = anon_sym_std, - [anon_sym_subroutine] = anon_sym_subroutine, - [anon_sym_super] = anon_sym_super, - [anon_sym_target] = anon_sym_target, - [anon_sym_template] = anon_sym_template, - [anon_sym_this] = anon_sym_this, - [anon_sym_thread_local] = anon_sym_thread_local, - [anon_sym_throw] = anon_sym_throw, - [anon_sym_trait] = anon_sym_trait, - [anon_sym_try] = anon_sym_try, - [anon_sym_type] = anon_sym_type, - [anon_sym_typedef] = anon_sym_typedef, - [anon_sym_typeid] = anon_sym_typeid, - [anon_sym_typename] = anon_sym_typename, - [anon_sym_typeof] = anon_sym_typeof, - [anon_sym_u16] = anon_sym_u16, - [anon_sym_u64] = anon_sym_u64, - [anon_sym_u8] = anon_sym_u8, - [anon_sym_union] = anon_sym_union, - [anon_sym_unless] = anon_sym_unless, - [anon_sym_unorm] = anon_sym_unorm, - [anon_sym_unsafe] = anon_sym_unsafe, - [anon_sym_unsized] = anon_sym_unsized, - [anon_sym_use] = anon_sym_use, - [anon_sym_using] = anon_sym_using, - [anon_sym_varying] = anon_sym_varying, - [anon_sym_virtual] = anon_sym_virtual, - [anon_sym_volatile] = anon_sym_volatile, - [anon_sym_wgsl] = anon_sym_wgsl, - [anon_sym_where] = anon_sym_where, - [anon_sym_with] = anon_sym_with, - [anon_sym_writeonly] = anon_sym_writeonly, - [anon_sym_yield] = anon_sym_yield, - [sym__comment] = sym__comment, - [sym__blankspace] = sym__blankspace, - [sym__block_comment] = sym__block_comment, - [sym__disambiguate_template] = sym__disambiguate_template, - [sym__template_args_start] = sym__template_args_start, - [sym__template_args_end] = sym__template_args_end, - [sym__less_than] = sym__less_than, - [sym__less_than_equal] = sym__less_than_equal, - [sym__shift_left] = sym__shift_left, - [sym__shift_left_assign] = sym__shift_left_assign, - [sym__greater_than] = sym__greater_than, - [sym__greater_than_equal] = sym__greater_than_equal, - [sym__shift_right] = sym__shift_right, - [sym__shift_right_assign] = sym__shift_right_assign, - [sym__error_sentinel] = sym__error_sentinel, - [sym_translation_unit] = sym_translation_unit, - [sym_global_directive] = sym_global_directive, - [sym_bool_literal] = sym_bool_literal, - [sym_int_literal] = sym_int_literal, - [sym_decimal_int_literal] = sym_decimal_int_literal, - [sym_float_literal] = sym_float_literal, - [sym_decimal_float_literal] = sym_decimal_float_literal, - [sym_hex_float_literal] = sym_hex_float_literal, - [sym_literal] = sym_literal, - [sym_ident] = sym_ident, - [sym_member_ident] = sym_member_ident, - [sym_attribute] = sym_attribute, - [sym_attrib_end] = sym_attrib_end, - [sym_array_type_specifier] = sym_array_type_specifier, - [sym_element_count_expression] = sym_element_count_expression, - [sym_struct_decl] = sym_struct_decl, - [sym_struct_body_decl] = sym_struct_body_decl, - [sym_struct_member] = sym_struct_member, - [sym_texture_and_sampler_types] = sym_texture_and_sampler_types, - [sym_sampler_type] = sym_sampler_type, - [sym_sampled_texture_type] = sym_sampled_texture_type, - [sym_storage_texture_type] = sym_storage_texture_type, - [sym_depth_texture_type] = sym_depth_texture_type, - [sym_type_alias_decl] = sym_type_alias_decl, - [sym_type_specifier] = sym_type_specifier, - [sym_type_specifier_without_ident] = sym_type_specifier_without_ident, - [sym_vec_prefix] = sym_vec_prefix, - [sym_mat_prefix] = sym_mat_prefix, - [sym_variable_statement] = sym_variable_statement, - [sym_variable_decl] = sym_variable_decl, - [sym_optionally_typed_ident] = sym_optionally_typed_ident, - [sym_variable_qualifier] = sym_variable_qualifier, - [sym_global_variable_decl] = sym_global_variable_decl, - [sym_global_constant_decl] = sym_global_constant_decl, - [sym_primary_expression] = sym_primary_expression, - [sym_call_expression] = sym_call_expression, - [sym_call_phrase] = sym_call_phrase, - [sym_callable] = sym_callable, - [sym_paren_expression] = sym_paren_expression, - [sym_argument_expression_list] = sym_argument_expression_list, - [sym_expression_comma_list] = sym_expression_comma_list, - [sym_component_or_swizzle_specifier] = sym_component_or_swizzle_specifier, - [sym_unary_expression] = sym_unary_expression, - [sym_singular_expression] = sym_singular_expression, - [sym_lhs_expression] = sym_lhs_expression, - [sym_core_lhs_expression] = sym_core_lhs_expression, - [sym_multiplicative_expression] = sym_multiplicative_expression, - [sym_multiplicative_operator] = sym_multiplicative_operator, - [sym_additive_expression] = sym_additive_expression, - [sym_additive_operator] = sym_additive_operator, - [sym_shift_expression] = sym_shift_expression, - [sym_relational_expression] = sym_relational_expression, - [sym_short_circuit_and_expression] = sym_short_circuit_and_expression, - [sym_short_circuit_or_expression] = sym_short_circuit_or_expression, - [sym_binary_or_expression] = sym_binary_or_expression, - [sym_binary_and_expression] = sym_binary_and_expression, - [sym_binary_xor_expression] = sym_binary_xor_expression, - [sym_bitwise_expression] = sym_bitwise_expression, - [sym_expression] = sym_expression, - [sym_compound_statement] = sym_compound_statement, - [sym_assignment_statement] = sym_assignment_statement, - [sym_compound_assignment_operator] = sym_compound_assignment_operator, - [sym_increment_statement] = sym_increment_statement, - [sym_decrement_statement] = sym_decrement_statement, - [sym_if_statement] = sym_if_statement, - [sym_if_clause] = sym_if_clause, - [sym_else_if_clause] = sym_else_if_clause, - [sym_else_clause] = sym_else_clause, - [sym_switch_statement] = sym_switch_statement, - [sym_switch_body] = sym_switch_body, - [sym_case_clause] = sym_case_clause, - [sym_default_alone_clause] = sym_default_alone_clause, - [sym_case_selectors] = sym_case_selectors, - [sym_case_selector] = sym_case_selector, - [sym_loop_statement] = sym_loop_statement, - [sym_for_statement] = sym_for_statement, - [sym_for_header] = sym_for_header, - [sym_for_init] = sym_for_init, - [sym_for_update] = sym_for_update, - [sym_while_statement] = sym_while_statement, - [sym_break_statement] = sym_break_statement, - [sym_break_if_statement] = sym_break_if_statement, - [sym_continuing_statement] = sym_continuing_statement, - [sym_continuing_compound_statement] = sym_continuing_compound_statement, - [sym_return_statement] = sym_return_statement, - [sym_func_call_statement] = sym_func_call_statement, - [sym_const_assert_statement] = sym_const_assert_statement, - [sym_statement] = sym_statement, - [sym_variable_updating_statement] = sym_variable_updating_statement, - [sym_function_decl] = sym_function_decl, - [sym_function_header] = sym_function_header, - [sym_param_list] = sym_param_list, - [sym_param] = sym_param, - [sym_enable_directive] = sym_enable_directive, - [sym_interpolation_type_name] = sym_interpolation_type_name, - [sym_interpolation_sample_name] = sym_interpolation_sample_name, - [sym_builtin_value_name] = sym_builtin_value_name, - [sym_access_mode] = sym_access_mode, - [sym_address_space] = sym_address_space, - [sym_texel_format] = sym_texel_format, - [sym_extension_name] = sym_extension_name, - [sym_swizzle_name] = sym_swizzle_name, - [aux_sym_translation_unit_repeat1] = aux_sym_translation_unit_repeat1, - [aux_sym_translation_unit_repeat2] = aux_sym_translation_unit_repeat2, - [aux_sym_struct_body_decl_repeat1] = aux_sym_struct_body_decl_repeat1, - [aux_sym_struct_member_repeat1] = aux_sym_struct_member_repeat1, - [aux_sym_expression_comma_list_repeat1] = aux_sym_expression_comma_list_repeat1, - [aux_sym_compound_statement_repeat1] = aux_sym_compound_statement_repeat1, - [aux_sym_if_statement_repeat1] = aux_sym_if_statement_repeat1, - [aux_sym_switch_statement_repeat1] = aux_sym_switch_statement_repeat1, - [aux_sym_case_selectors_repeat1] = aux_sym_case_selectors_repeat1, - [aux_sym_param_list_repeat1] = aux_sym_param_list_repeat1, -}; - -static const TSSymbolMetadata ts_symbol_metadata[] = { - [ts_builtin_sym_end] = { - .visible = false, - .named = true, - }, - [sym_ident_pattern_token] = { - .visible = true, - .named = true, - }, - [anon_sym_SEMI] = { - .visible = true, - .named = false, - }, - [anon_sym_true] = { - .visible = true, - .named = false, - }, - [anon_sym_false] = { - .visible = true, - .named = false, - }, - [aux_sym_decimal_int_literal_token1] = { - .visible = false, - .named = false, - }, - [aux_sym_decimal_int_literal_token2] = { - .visible = false, - .named = false, - }, - [sym_hex_int_literal] = { - .visible = true, - .named = true, - }, - [aux_sym_decimal_float_literal_token1] = { - .visible = false, - .named = false, - }, - [aux_sym_decimal_float_literal_token2] = { - .visible = false, - .named = false, - }, - [aux_sym_decimal_float_literal_token3] = { - .visible = false, - .named = false, - }, - [aux_sym_decimal_float_literal_token4] = { - .visible = false, - .named = false, - }, - [aux_sym_decimal_float_literal_token5] = { - .visible = false, - .named = false, - }, - [aux_sym_hex_float_literal_token1] = { - .visible = false, - .named = false, - }, - [aux_sym_hex_float_literal_token2] = { - .visible = false, - .named = false, - }, - [aux_sym_hex_float_literal_token3] = { - .visible = false, - .named = false, - }, - [anon_sym_AT] = { - .visible = true, - .named = false, - }, - [anon_sym_align] = { - .visible = true, - .named = false, - }, - [anon_sym_LPAREN] = { - .visible = true, - .named = false, - }, - [anon_sym_binding] = { - .visible = true, - .named = false, - }, - [anon_sym_builtin] = { - .visible = true, - .named = false, - }, - [anon_sym_const] = { - .visible = true, - .named = false, - }, - [anon_sym_group] = { - .visible = true, - .named = false, - }, - [anon_sym_id] = { - .visible = true, - .named = false, - }, - [anon_sym_interpolate] = { - .visible = true, - .named = false, - }, - [anon_sym_COMMA] = { - .visible = true, - .named = false, - }, - [anon_sym_invariant] = { - .visible = true, - .named = false, - }, - [anon_sym_location] = { - .visible = true, - .named = false, - }, - [anon_sym_size] = { - .visible = true, - .named = false, - }, - [anon_sym_workgroup_size] = { - .visible = true, - .named = false, - }, - [anon_sym_vertex] = { - .visible = true, - .named = false, - }, - [anon_sym_fragment] = { - .visible = true, - .named = false, - }, - [anon_sym_compute] = { - .visible = true, - .named = false, - }, - [anon_sym_RPAREN] = { - .visible = true, - .named = false, - }, - [anon_sym_array] = { - .visible = true, - .named = false, - }, - [anon_sym_struct] = { - .visible = true, - .named = false, - }, - [anon_sym_LBRACE] = { - .visible = true, - .named = false, - }, - [anon_sym_RBRACE] = { - .visible = true, - .named = false, - }, - [anon_sym_COLON] = { - .visible = true, - .named = false, - }, - [anon_sym_sampler] = { - .visible = true, - .named = false, - }, - [anon_sym_sampler_comparison] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_1d] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_2d] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_2d_array] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_3d] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_cube] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_cube_array] = { - .visible = true, - .named = false, - }, - [sym_multisampled_texture_type] = { - .visible = true, - .named = true, - }, - [anon_sym_texture_storage_1d] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_storage_2d] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_storage_2d_array] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_storage_3d] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_depth_2d] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_depth_2d_array] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_depth_cube] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_depth_cube_array] = { - .visible = true, - .named = false, - }, - [anon_sym_texture_depth_multisampled_2d] = { - .visible = true, - .named = false, - }, - [anon_sym_alias] = { - .visible = true, - .named = false, - }, - [anon_sym_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_bool] = { - .visible = true, - .named = false, - }, - [anon_sym_f32] = { - .visible = true, - .named = false, - }, - [anon_sym_f16] = { - .visible = true, - .named = false, - }, - [anon_sym_i32] = { - .visible = true, - .named = false, - }, - [anon_sym_u32] = { - .visible = true, - .named = false, - }, - [anon_sym_ptr] = { - .visible = true, - .named = false, - }, - [anon_sym_atomic] = { - .visible = true, - .named = false, - }, - [anon_sym_vec2] = { - .visible = true, - .named = false, - }, - [anon_sym_vec3] = { - .visible = true, - .named = false, - }, - [anon_sym_vec4] = { - .visible = true, - .named = false, - }, - [anon_sym_mat2x2] = { - .visible = true, - .named = false, - }, - [anon_sym_mat2x3] = { - .visible = true, - .named = false, - }, - [anon_sym_mat2x4] = { - .visible = true, - .named = false, - }, - [anon_sym_mat3x2] = { - .visible = true, - .named = false, - }, - [anon_sym_mat3x3] = { - .visible = true, - .named = false, - }, - [anon_sym_mat3x4] = { - .visible = true, - .named = false, - }, - [anon_sym_mat4x2] = { - .visible = true, - .named = false, - }, - [anon_sym_mat4x3] = { - .visible = true, - .named = false, - }, - [anon_sym_mat4x4] = { - .visible = true, - .named = false, - }, - [anon_sym_let] = { - .visible = true, - .named = false, - }, - [anon_sym_var] = { - .visible = true, - .named = false, - }, - [anon_sym_override] = { - .visible = true, - .named = false, - }, - [anon_sym_bitcast] = { - .visible = true, - .named = false, - }, - [anon_sym_LBRACK] = { - .visible = true, - .named = false, - }, - [anon_sym_RBRACK] = { - .visible = true, - .named = false, - }, - [anon_sym_DOT] = { - .visible = true, - .named = false, - }, - [anon_sym_DASH] = { - .visible = true, - .named = false, - }, - [anon_sym_BANG] = { - .visible = true, - .named = false, - }, - [anon_sym_TILDE] = { - .visible = true, - .named = false, - }, - [anon_sym_STAR] = { - .visible = true, - .named = false, - }, - [anon_sym_AMP] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH] = { - .visible = true, - .named = false, - }, - [anon_sym_PERCENT] = { - .visible = true, - .named = false, - }, - [anon_sym_PLUS] = { - .visible = true, - .named = false, - }, - [anon_sym_EQ_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_BANG_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_AMP_AMP] = { - .visible = true, - .named = false, - }, - [anon_sym_PIPE_PIPE] = { - .visible = true, - .named = false, - }, - [anon_sym_PIPE] = { - .visible = true, - .named = false, - }, - [anon_sym_CARET] = { - .visible = true, - .named = false, - }, - [anon_sym__] = { - .visible = true, - .named = false, - }, - [anon_sym_PLUS_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_DASH_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_STAR_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_PERCENT_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_AMP_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_PIPE_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_CARET_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_PLUS_PLUS] = { - .visible = true, - .named = false, - }, - [anon_sym_DASH_DASH] = { - .visible = true, - .named = false, - }, - [anon_sym_if] = { - .visible = true, - .named = false, - }, - [anon_sym_else] = { - .visible = true, - .named = false, - }, - [anon_sym_switch] = { - .visible = true, - .named = false, - }, - [anon_sym_case] = { - .visible = true, - .named = false, - }, - [anon_sym_default] = { - .visible = true, - .named = false, - }, - [anon_sym_loop] = { - .visible = true, - .named = false, - }, - [anon_sym_for] = { - .visible = true, - .named = false, - }, - [anon_sym_while] = { - .visible = true, - .named = false, - }, - [anon_sym_break] = { - .visible = true, - .named = false, - }, - [sym_continue_statement] = { - .visible = true, - .named = true, - }, - [anon_sym_continuing] = { - .visible = true, - .named = false, - }, - [anon_sym_return] = { - .visible = true, - .named = false, - }, - [anon_sym_const_assert] = { - .visible = true, - .named = false, - }, - [anon_sym_discard] = { - .visible = true, - .named = false, - }, - [anon_sym_fn] = { - .visible = true, - .named = false, - }, - [anon_sym_DASH_GT] = { - .visible = true, - .named = false, - }, - [anon_sym_enable] = { - .visible = true, - .named = false, - }, - [anon_sym_perspective] = { - .visible = true, - .named = false, - }, - [anon_sym_linear] = { - .visible = true, - .named = false, - }, - [anon_sym_flat] = { - .visible = true, - .named = false, - }, - [anon_sym_center] = { - .visible = true, - .named = false, - }, - [anon_sym_centroid] = { - .visible = true, - .named = false, - }, - [anon_sym_sample] = { - .visible = true, - .named = false, - }, - [anon_sym_vertex_index] = { - .visible = true, - .named = false, - }, - [anon_sym_instance_index] = { - .visible = true, - .named = false, - }, - [anon_sym_position] = { - .visible = true, - .named = false, - }, - [anon_sym_front_facing] = { - .visible = true, - .named = false, - }, - [anon_sym_frag_depth] = { - .visible = true, - .named = false, - }, - [anon_sym_local_invocation_id] = { - .visible = true, - .named = false, - }, - [anon_sym_local_invocation_index] = { - .visible = true, - .named = false, - }, - [anon_sym_global_invocation_id] = { - .visible = true, - .named = false, - }, - [anon_sym_workgroup_id] = { - .visible = true, - .named = false, - }, - [anon_sym_num_workgroups] = { - .visible = true, - .named = false, - }, - [anon_sym_sample_index] = { - .visible = true, - .named = false, - }, - [anon_sym_sample_mask] = { - .visible = true, - .named = false, - }, - [anon_sym_read] = { - .visible = true, - .named = false, - }, - [anon_sym_write] = { - .visible = true, - .named = false, - }, - [anon_sym_read_write] = { - .visible = true, - .named = false, - }, - [anon_sym_function] = { - .visible = true, - .named = false, - }, - [anon_sym_private] = { - .visible = true, - .named = false, - }, - [anon_sym_workgroup] = { - .visible = true, - .named = false, - }, - [anon_sym_uniform] = { - .visible = true, - .named = false, - }, - [anon_sym_storage] = { - .visible = true, - .named = false, - }, - [anon_sym_rgba8unorm] = { - .visible = true, - .named = false, - }, - [anon_sym_rgba8snorm] = { - .visible = true, - .named = false, - }, - [anon_sym_rgba8uint] = { - .visible = true, - .named = false, - }, - [anon_sym_rgba8sint] = { - .visible = true, - .named = false, - }, - [anon_sym_rgba16uint] = { - .visible = true, - .named = false, - }, - [anon_sym_rgba16sint] = { - .visible = true, - .named = false, - }, - [anon_sym_rgba16float] = { - .visible = true, - .named = false, - }, - [anon_sym_r32uint] = { - .visible = true, - .named = false, - }, - [anon_sym_r32sint] = { - .visible = true, - .named = false, - }, - [anon_sym_r32float] = { - .visible = true, - .named = false, - }, - [anon_sym_rg32uint] = { - .visible = true, - .named = false, - }, - [anon_sym_rg32sint] = { - .visible = true, - .named = false, - }, - [anon_sym_rg32float] = { - .visible = true, - .named = false, - }, - [anon_sym_rgba32uint] = { - .visible = true, - .named = false, - }, - [anon_sym_rgba32sint] = { - .visible = true, - .named = false, - }, - [anon_sym_rgba32float] = { - .visible = true, - .named = false, - }, - [anon_sym_bgra8unorm] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = { - .visible = true, - .named = false, - }, - [anon_sym_CompileShader] = { - .visible = true, - .named = false, - }, - [anon_sym_ComputeShader] = { - .visible = true, - .named = false, - }, - [anon_sym_DomainShader] = { - .visible = true, - .named = false, - }, - [anon_sym_GeometryShader] = { - .visible = true, - .named = false, - }, - [anon_sym_Hullshader] = { - .visible = true, - .named = false, - }, - [anon_sym_NULL] = { - .visible = true, - .named = false, - }, - [anon_sym_Self] = { - .visible = true, - .named = false, - }, - [anon_sym_abstract] = { - .visible = true, - .named = false, - }, - [anon_sym_active] = { - .visible = true, - .named = false, - }, - [anon_sym_alignas] = { - .visible = true, - .named = false, - }, - [anon_sym_alignof] = { - .visible = true, - .named = false, - }, - [anon_sym_as] = { - .visible = true, - .named = false, - }, - [anon_sym_asm] = { - .visible = true, - .named = false, - }, - [anon_sym_asm_fragment] = { - .visible = true, - .named = false, - }, - [anon_sym_async] = { - .visible = true, - .named = false, - }, - [anon_sym_attribute] = { - .visible = true, - .named = false, - }, - [anon_sym_auto] = { - .visible = true, - .named = false, - }, - [anon_sym_await] = { - .visible = true, - .named = false, - }, - [anon_sym_become] = { - .visible = true, - .named = false, - }, - [anon_sym_bf16] = { - .visible = true, - .named = false, - }, - [anon_sym_binding_array] = { - .visible = true, - .named = false, - }, - [anon_sym_cast] = { - .visible = true, - .named = false, - }, - [anon_sym_catch] = { - .visible = true, - .named = false, - }, - [anon_sym_class] = { - .visible = true, - .named = false, - }, - [anon_sym_co_await] = { - .visible = true, - .named = false, - }, - [anon_sym_co_return] = { - .visible = true, - .named = false, - }, - [anon_sym_co_yield] = { - .visible = true, - .named = false, - }, - [anon_sym_coherent] = { - .visible = true, - .named = false, - }, - [anon_sym_column_major] = { - .visible = true, - .named = false, - }, - [anon_sym_common] = { - .visible = true, - .named = false, - }, - [anon_sym_compile] = { - .visible = true, - .named = false, - }, - [anon_sym_compile_fragment] = { - .visible = true, - .named = false, - }, - [anon_sym_concept] = { - .visible = true, - .named = false, - }, - [anon_sym_const_cast] = { - .visible = true, - .named = false, - }, - [anon_sym_consteval] = { - .visible = true, - .named = false, - }, - [anon_sym_constexpr] = { - .visible = true, - .named = false, - }, - [anon_sym_constinit] = { - .visible = true, - .named = false, - }, - [anon_sym_crate] = { - .visible = true, - .named = false, - }, - [anon_sym_debugger] = { - .visible = true, - .named = false, - }, - [anon_sym_decltype] = { - .visible = true, - .named = false, - }, - [anon_sym_delete] = { - .visible = true, - .named = false, - }, - [anon_sym_demote] = { - .visible = true, - .named = false, - }, - [anon_sym_demote_to_helper] = { - .visible = true, - .named = false, - }, - [anon_sym_do] = { - .visible = true, - .named = false, - }, - [anon_sym_dynamic_cast] = { - .visible = true, - .named = false, - }, - [anon_sym_enum] = { - .visible = true, - .named = false, - }, - [anon_sym_explicit] = { - .visible = true, - .named = false, - }, - [anon_sym_export] = { - .visible = true, - .named = false, - }, - [anon_sym_extends] = { - .visible = true, - .named = false, - }, - [anon_sym_extern] = { - .visible = true, - .named = false, - }, - [anon_sym_external] = { - .visible = true, - .named = false, - }, - [anon_sym_f64] = { - .visible = true, - .named = false, - }, - [anon_sym_fallthrough] = { - .visible = true, - .named = false, - }, - [anon_sym_filter] = { - .visible = true, - .named = false, - }, - [anon_sym_final] = { - .visible = true, - .named = false, - }, - [anon_sym_finally] = { - .visible = true, - .named = false, - }, - [anon_sym_friend] = { - .visible = true, - .named = false, - }, - [anon_sym_from] = { - .visible = true, - .named = false, - }, - [anon_sym_fxgroup] = { - .visible = true, - .named = false, - }, - [anon_sym_get] = { - .visible = true, - .named = false, - }, - [anon_sym_goto] = { - .visible = true, - .named = false, - }, - [anon_sym_groupshared] = { - .visible = true, - .named = false, - }, - [anon_sym_handle] = { - .visible = true, - .named = false, - }, - [anon_sym_highp] = { - .visible = true, - .named = false, - }, - [anon_sym_i16] = { - .visible = true, - .named = false, - }, - [anon_sym_i64] = { - .visible = true, - .named = false, - }, - [anon_sym_i8] = { - .visible = true, - .named = false, - }, - [anon_sym_impl] = { - .visible = true, - .named = false, - }, - [anon_sym_implements] = { - .visible = true, - .named = false, - }, - [anon_sym_import] = { - .visible = true, - .named = false, - }, - [anon_sym_inline] = { - .visible = true, - .named = false, - }, - [anon_sym_inout] = { - .visible = true, - .named = false, - }, - [anon_sym_instanceof] = { - .visible = true, - .named = false, - }, - [anon_sym_interface] = { - .visible = true, - .named = false, - }, - [anon_sym_layout] = { - .visible = true, - .named = false, - }, - [anon_sym_lowp] = { - .visible = true, - .named = false, - }, - [anon_sym_macro] = { - .visible = true, - .named = false, - }, - [anon_sym_macro_rules] = { - .visible = true, - .named = false, - }, - [anon_sym_match] = { - .visible = true, - .named = false, - }, - [anon_sym_mediump] = { - .visible = true, - .named = false, - }, - [anon_sym_meta] = { - .visible = true, - .named = false, - }, - [anon_sym_mod] = { - .visible = true, - .named = false, - }, - [anon_sym_module] = { - .visible = true, - .named = false, - }, - [anon_sym_move] = { - .visible = true, - .named = false, - }, - [anon_sym_mut] = { - .visible = true, - .named = false, - }, - [anon_sym_mutable] = { - .visible = true, - .named = false, - }, - [anon_sym_namespace] = { - .visible = true, - .named = false, - }, - [anon_sym_new] = { - .visible = true, - .named = false, - }, - [anon_sym_nil] = { - .visible = true, - .named = false, - }, - [anon_sym_noexcept] = { - .visible = true, - .named = false, - }, - [anon_sym_noinline] = { - .visible = true, - .named = false, - }, - [anon_sym_nointerpolation] = { - .visible = true, - .named = false, - }, - [anon_sym_noperspective] = { - .visible = true, - .named = false, - }, - [anon_sym_null] = { - .visible = true, - .named = false, - }, - [anon_sym_nullptr] = { - .visible = true, - .named = false, - }, - [anon_sym_of] = { - .visible = true, - .named = false, - }, - [anon_sym_operator] = { - .visible = true, - .named = false, - }, - [anon_sym_package] = { - .visible = true, - .named = false, - }, - [anon_sym_packoffset] = { - .visible = true, - .named = false, - }, - [anon_sym_partition] = { - .visible = true, - .named = false, - }, - [anon_sym_pass] = { - .visible = true, - .named = false, - }, - [anon_sym_patch] = { - .visible = true, - .named = false, - }, - [anon_sym_pixelfragment] = { - .visible = true, - .named = false, - }, - [anon_sym_precise] = { - .visible = true, - .named = false, - }, - [anon_sym_precision] = { - .visible = true, - .named = false, - }, - [anon_sym_premerge] = { - .visible = true, - .named = false, - }, - [anon_sym_priv] = { - .visible = true, - .named = false, - }, - [anon_sym_protected] = { - .visible = true, - .named = false, - }, - [anon_sym_pub] = { - .visible = true, - .named = false, - }, - [anon_sym_public] = { - .visible = true, - .named = false, - }, - [anon_sym_quat] = { - .visible = true, - .named = false, - }, - [anon_sym_readonly] = { - .visible = true, - .named = false, - }, - [anon_sym_ref] = { - .visible = true, - .named = false, - }, - [anon_sym_regardless] = { - .visible = true, - .named = false, - }, - [anon_sym_register] = { - .visible = true, - .named = false, - }, - [anon_sym_reinterpret_cast] = { - .visible = true, - .named = false, - }, - [anon_sym_requires] = { - .visible = true, - .named = false, - }, - [anon_sym_resource] = { - .visible = true, - .named = false, - }, - [anon_sym_restrict] = { - .visible = true, - .named = false, - }, - [anon_sym_self] = { - .visible = true, - .named = false, - }, - [anon_sym_set] = { - .visible = true, - .named = false, - }, - [anon_sym_shared] = { - .visible = true, - .named = false, - }, - [anon_sym_signed] = { - .visible = true, - .named = false, - }, - [anon_sym_sizeof] = { - .visible = true, - .named = false, - }, - [anon_sym_smooth] = { - .visible = true, - .named = false, - }, - [anon_sym_snorm] = { - .visible = true, - .named = false, - }, - [anon_sym_static] = { - .visible = true, - .named = false, - }, - [anon_sym_static_assert] = { - .visible = true, - .named = false, - }, - [anon_sym_static_cast] = { - .visible = true, - .named = false, - }, - [anon_sym_std] = { - .visible = true, - .named = false, - }, - [anon_sym_subroutine] = { - .visible = true, - .named = false, - }, - [anon_sym_super] = { - .visible = true, - .named = false, - }, - [anon_sym_target] = { - .visible = true, - .named = false, - }, - [anon_sym_template] = { - .visible = true, - .named = false, - }, - [anon_sym_this] = { - .visible = true, - .named = false, - }, - [anon_sym_thread_local] = { - .visible = true, - .named = false, - }, - [anon_sym_throw] = { - .visible = true, - .named = false, - }, - [anon_sym_trait] = { - .visible = true, - .named = false, - }, - [anon_sym_try] = { - .visible = true, - .named = false, - }, - [anon_sym_type] = { - .visible = true, - .named = false, - }, - [anon_sym_typedef] = { - .visible = true, - .named = false, - }, - [anon_sym_typeid] = { - .visible = true, - .named = false, - }, - [anon_sym_typename] = { - .visible = true, - .named = false, - }, - [anon_sym_typeof] = { - .visible = true, - .named = false, - }, - [anon_sym_u16] = { - .visible = true, - .named = false, - }, - [anon_sym_u64] = { - .visible = true, - .named = false, - }, - [anon_sym_u8] = { - .visible = true, - .named = false, - }, - [anon_sym_union] = { - .visible = true, - .named = false, - }, - [anon_sym_unless] = { - .visible = true, - .named = false, - }, - [anon_sym_unorm] = { - .visible = true, - .named = false, - }, - [anon_sym_unsafe] = { - .visible = true, - .named = false, - }, - [anon_sym_unsized] = { - .visible = true, - .named = false, - }, - [anon_sym_use] = { - .visible = true, - .named = false, - }, - [anon_sym_using] = { - .visible = true, - .named = false, - }, - [anon_sym_varying] = { - .visible = true, - .named = false, - }, - [anon_sym_virtual] = { - .visible = true, - .named = false, - }, - [anon_sym_volatile] = { - .visible = true, - .named = false, - }, - [anon_sym_wgsl] = { - .visible = true, - .named = false, - }, - [anon_sym_where] = { - .visible = true, - .named = false, - }, - [anon_sym_with] = { - .visible = true, - .named = false, - }, - [anon_sym_writeonly] = { - .visible = true, - .named = false, - }, - [anon_sym_yield] = { - .visible = true, - .named = false, - }, - [sym__comment] = { - .visible = false, - .named = true, - }, - [sym__blankspace] = { - .visible = false, - .named = true, - }, - [sym__block_comment] = { - .visible = false, - .named = true, - }, - [sym__disambiguate_template] = { - .visible = false, - .named = true, - }, - [sym__template_args_start] = { - .visible = false, - .named = true, - }, - [sym__template_args_end] = { - .visible = false, - .named = true, - }, - [sym__less_than] = { - .visible = false, - .named = true, - }, - [sym__less_than_equal] = { - .visible = false, - .named = true, - }, - [sym__shift_left] = { - .visible = false, - .named = true, - }, - [sym__shift_left_assign] = { - .visible = false, - .named = true, - }, - [sym__greater_than] = { - .visible = false, - .named = true, - }, - [sym__greater_than_equal] = { - .visible = false, - .named = true, - }, - [sym__shift_right] = { - .visible = false, - .named = true, - }, - [sym__shift_right_assign] = { - .visible = false, - .named = true, - }, - [sym__error_sentinel] = { - .visible = false, - .named = true, - }, - [sym_translation_unit] = { - .visible = true, - .named = true, - }, - [sym_global_directive] = { - .visible = true, - .named = true, - }, - [sym_bool_literal] = { - .visible = true, - .named = true, - }, - [sym_int_literal] = { - .visible = true, - .named = true, - }, - [sym_decimal_int_literal] = { - .visible = true, - .named = true, - }, - [sym_float_literal] = { - .visible = true, - .named = true, - }, - [sym_decimal_float_literal] = { - .visible = true, - .named = true, - }, - [sym_hex_float_literal] = { - .visible = true, - .named = true, - }, - [sym_literal] = { - .visible = true, - .named = true, - }, - [sym_ident] = { - .visible = true, - .named = true, - }, - [sym_member_ident] = { - .visible = true, - .named = true, - }, - [sym_attribute] = { - .visible = true, - .named = true, - }, - [sym_attrib_end] = { - .visible = true, - .named = true, - }, - [sym_array_type_specifier] = { - .visible = true, - .named = true, - }, - [sym_element_count_expression] = { - .visible = true, - .named = true, - }, - [sym_struct_decl] = { - .visible = true, - .named = true, - }, - [sym_struct_body_decl] = { - .visible = true, - .named = true, - }, - [sym_struct_member] = { - .visible = true, - .named = true, - }, - [sym_texture_and_sampler_types] = { - .visible = true, - .named = true, - }, - [sym_sampler_type] = { - .visible = true, - .named = true, - }, - [sym_sampled_texture_type] = { - .visible = true, - .named = true, - }, - [sym_storage_texture_type] = { - .visible = true, - .named = true, - }, - [sym_depth_texture_type] = { - .visible = true, - .named = true, - }, - [sym_type_alias_decl] = { - .visible = true, - .named = true, - }, - [sym_type_specifier] = { - .visible = true, - .named = true, - }, - [sym_type_specifier_without_ident] = { - .visible = true, - .named = true, - }, - [sym_vec_prefix] = { - .visible = true, - .named = true, - }, - [sym_mat_prefix] = { - .visible = true, - .named = true, - }, - [sym_variable_statement] = { - .visible = true, - .named = true, - }, - [sym_variable_decl] = { - .visible = true, - .named = true, - }, - [sym_optionally_typed_ident] = { - .visible = true, - .named = true, - }, - [sym_variable_qualifier] = { - .visible = true, - .named = true, - }, - [sym_global_variable_decl] = { - .visible = true, - .named = true, - }, - [sym_global_constant_decl] = { - .visible = true, - .named = true, - }, - [sym_primary_expression] = { - .visible = true, - .named = true, - }, - [sym_call_expression] = { - .visible = true, - .named = true, - }, - [sym_call_phrase] = { - .visible = true, - .named = true, - }, - [sym_callable] = { - .visible = true, - .named = true, - }, - [sym_paren_expression] = { - .visible = true, - .named = true, - }, - [sym_argument_expression_list] = { - .visible = true, - .named = true, - }, - [sym_expression_comma_list] = { - .visible = true, - .named = true, - }, - [sym_component_or_swizzle_specifier] = { - .visible = true, - .named = true, - }, - [sym_unary_expression] = { - .visible = true, - .named = true, - }, - [sym_singular_expression] = { - .visible = true, - .named = true, - }, - [sym_lhs_expression] = { - .visible = true, - .named = true, - }, - [sym_core_lhs_expression] = { - .visible = true, - .named = true, - }, - [sym_multiplicative_expression] = { - .visible = true, - .named = true, - }, - [sym_multiplicative_operator] = { - .visible = true, - .named = true, - }, - [sym_additive_expression] = { - .visible = true, - .named = true, - }, - [sym_additive_operator] = { - .visible = true, - .named = true, - }, - [sym_shift_expression] = { - .visible = true, - .named = true, - }, - [sym_relational_expression] = { - .visible = true, - .named = true, - }, - [sym_short_circuit_and_expression] = { - .visible = true, - .named = true, - }, - [sym_short_circuit_or_expression] = { - .visible = true, - .named = true, - }, - [sym_binary_or_expression] = { - .visible = true, - .named = true, - }, - [sym_binary_and_expression] = { - .visible = true, - .named = true, - }, - [sym_binary_xor_expression] = { - .visible = true, - .named = true, - }, - [sym_bitwise_expression] = { - .visible = true, - .named = true, - }, - [sym_expression] = { - .visible = true, - .named = true, - }, - [sym_compound_statement] = { - .visible = true, - .named = true, - }, - [sym_assignment_statement] = { - .visible = true, - .named = true, - }, - [sym_compound_assignment_operator] = { - .visible = true, - .named = true, - }, - [sym_increment_statement] = { - .visible = true, - .named = true, - }, - [sym_decrement_statement] = { - .visible = true, - .named = true, - }, - [sym_if_statement] = { - .visible = true, - .named = true, - }, - [sym_if_clause] = { - .visible = true, - .named = true, - }, - [sym_else_if_clause] = { - .visible = true, - .named = true, - }, - [sym_else_clause] = { - .visible = true, - .named = true, - }, - [sym_switch_statement] = { - .visible = true, - .named = true, - }, - [sym_switch_body] = { - .visible = true, - .named = true, - }, - [sym_case_clause] = { - .visible = true, - .named = true, - }, - [sym_default_alone_clause] = { - .visible = true, - .named = true, - }, - [sym_case_selectors] = { - .visible = true, - .named = true, - }, - [sym_case_selector] = { - .visible = true, - .named = true, - }, - [sym_loop_statement] = { - .visible = true, - .named = true, - }, - [sym_for_statement] = { - .visible = true, - .named = true, - }, - [sym_for_header] = { - .visible = true, - .named = true, - }, - [sym_for_init] = { - .visible = true, - .named = true, - }, - [sym_for_update] = { - .visible = true, - .named = true, - }, - [sym_while_statement] = { - .visible = true, - .named = true, - }, - [sym_break_statement] = { - .visible = true, - .named = true, - }, - [sym_break_if_statement] = { - .visible = true, - .named = true, - }, - [sym_continuing_statement] = { - .visible = true, - .named = true, - }, - [sym_continuing_compound_statement] = { - .visible = true, - .named = true, - }, - [sym_return_statement] = { - .visible = true, - .named = true, - }, - [sym_func_call_statement] = { - .visible = true, - .named = true, - }, - [sym_const_assert_statement] = { - .visible = true, - .named = true, - }, - [sym_statement] = { - .visible = true, - .named = true, - }, - [sym_variable_updating_statement] = { - .visible = true, - .named = true, - }, - [sym_function_decl] = { - .visible = true, - .named = true, - }, - [sym_function_header] = { - .visible = true, - .named = true, - }, - [sym_param_list] = { - .visible = true, - .named = true, - }, - [sym_param] = { - .visible = true, - .named = true, - }, - [sym_enable_directive] = { - .visible = true, - .named = true, - }, - [sym_interpolation_type_name] = { - .visible = true, - .named = true, - }, - [sym_interpolation_sample_name] = { - .visible = true, - .named = true, - }, - [sym_builtin_value_name] = { - .visible = true, - .named = true, - }, - [sym_access_mode] = { - .visible = true, - .named = true, - }, - [sym_address_space] = { - .visible = true, - .named = true, - }, - [sym_texel_format] = { - .visible = true, - .named = true, - }, - [sym_extension_name] = { - .visible = true, - .named = true, - }, - [sym_swizzle_name] = { - .visible = true, - .named = true, - }, - [aux_sym_translation_unit_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_translation_unit_repeat2] = { - .visible = false, - .named = false, - }, - [aux_sym_struct_body_decl_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_struct_member_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_expression_comma_list_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_compound_statement_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_if_statement_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_switch_statement_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_case_selectors_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_param_list_repeat1] = { - .visible = false, - .named = false, - }, -}; - -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] = 5, - [6] = 5, - [7] = 7, - [8] = 5, - [9] = 5, - [10] = 5, - [11] = 5, - [12] = 12, - [13] = 13, - [14] = 14, - [15] = 15, - [16] = 16, - [17] = 17, - [18] = 18, - [19] = 19, - [20] = 19, - [21] = 21, - [22] = 19, - [23] = 23, - [24] = 21, - [25] = 19, - [26] = 26, - [27] = 21, - [28] = 28, - [29] = 29, - [30] = 30, - [31] = 31, - [32] = 32, - [33] = 19, - [34] = 34, - [35] = 35, - [36] = 21, - [37] = 37, - [38] = 38, - [39] = 39, - [40] = 40, - [41] = 41, - [42] = 42, - [43] = 43, - [44] = 19, - [45] = 45, - [46] = 21, - [47] = 47, - [48] = 21, - [49] = 19, - [50] = 50, - [51] = 51, - [52] = 52, - [53] = 53, - [54] = 54, - [55] = 55, - [56] = 55, - [57] = 57, - [58] = 58, - [59] = 59, - [60] = 59, - [61] = 61, - [62] = 61, - [63] = 61, - [64] = 61, - [65] = 65, - [66] = 66, - [67] = 67, - [68] = 68, - [69] = 68, - [70] = 70, - [71] = 71, - [72] = 70, - [73] = 65, - [74] = 70, - [75] = 68, - [76] = 70, - [77] = 65, - [78] = 65, - [79] = 70, - [80] = 70, - [81] = 67, - [82] = 66, - [83] = 71, - [84] = 84, - [85] = 85, - [86] = 86, - [87] = 87, - [88] = 88, - [89] = 89, - [90] = 90, - [91] = 91, - [92] = 92, - [93] = 93, - [94] = 94, - [95] = 95, - [96] = 96, - [97] = 97, - [98] = 98, - [99] = 99, - [100] = 100, - [101] = 101, - [102] = 102, - [103] = 103, - [104] = 104, - [105] = 105, - [106] = 106, - [107] = 107, - [108] = 108, - [109] = 109, - [110] = 110, - [111] = 111, - [112] = 112, - [113] = 113, - [114] = 114, - [115] = 115, - [116] = 116, - [117] = 117, - [118] = 118, - [119] = 119, - [120] = 120, - [121] = 121, - [122] = 122, - [123] = 119, - [124] = 116, - [125] = 113, - [126] = 120, - [127] = 116, - [128] = 128, - [129] = 116, - [130] = 116, - [131] = 116, - [132] = 118, - [133] = 133, - [134] = 134, - [135] = 135, - [136] = 136, - [137] = 137, - [138] = 138, - [139] = 139, - [140] = 140, - [141] = 141, - [142] = 142, - [143] = 143, - [144] = 144, - [145] = 145, - [146] = 146, - [147] = 147, - [148] = 148, - [149] = 149, - [150] = 150, - [151] = 151, - [152] = 152, - [153] = 153, - [154] = 154, - [155] = 155, - [156] = 156, - [157] = 157, - [158] = 158, - [159] = 159, - [160] = 160, - [161] = 161, - [162] = 162, - [163] = 163, - [164] = 164, - [165] = 165, - [166] = 166, - [167] = 167, - [168] = 141, - [169] = 142, - [170] = 144, - [171] = 140, - [172] = 143, - [173] = 156, - [174] = 150, - [175] = 159, - [176] = 146, - [177] = 148, - [178] = 152, - [179] = 179, - [180] = 158, - [181] = 155, - [182] = 182, - [183] = 160, - [184] = 151, - [185] = 147, - [186] = 153, - [187] = 149, - [188] = 157, - [189] = 145, - [190] = 154, - [191] = 191, - [192] = 192, - [193] = 193, - [194] = 194, - [195] = 141, - [196] = 196, - [197] = 164, - [198] = 163, - [199] = 167, - [200] = 165, - [201] = 166, - [202] = 202, - [203] = 203, - [204] = 143, - [205] = 141, - [206] = 140, - [207] = 144, - [208] = 142, - [209] = 143, - [210] = 140, - [211] = 203, - [212] = 142, - [213] = 144, - [214] = 214, - [215] = 157, - [216] = 147, - [217] = 150, - [218] = 156, - [219] = 147, - [220] = 149, - [221] = 159, - [222] = 152, - [223] = 148, - [224] = 145, - [225] = 154, - [226] = 151, - [227] = 146, - [228] = 153, - [229] = 158, - [230] = 151, - [231] = 160, - [232] = 148, - [233] = 150, - [234] = 154, - [235] = 145, - [236] = 149, - [237] = 158, - [238] = 159, - [239] = 156, - [240] = 155, - [241] = 157, - [242] = 152, - [243] = 160, - [244] = 155, - [245] = 146, - [246] = 153, - [247] = 143, - [248] = 143, - [249] = 249, - [250] = 250, - [251] = 141, - [252] = 144, - [253] = 140, - [254] = 142, - [255] = 141, - [256] = 142, - [257] = 182, - [258] = 166, - [259] = 148, - [260] = 159, - [261] = 151, - [262] = 165, - [263] = 263, - [264] = 167, - [265] = 163, - [266] = 163, - [267] = 152, - [268] = 167, - [269] = 156, - [270] = 155, - [271] = 156, - [272] = 158, - [273] = 165, - [274] = 154, - [275] = 164, - [276] = 164, - [277] = 157, - [278] = 146, - [279] = 157, - [280] = 280, - [281] = 145, - [282] = 166, - [283] = 160, - [284] = 153, - [285] = 150, - [286] = 147, - [287] = 149, - [288] = 288, - [289] = 182, - [290] = 193, - [291] = 291, - [292] = 292, - [293] = 194, - [294] = 294, - [295] = 295, - [296] = 296, - [297] = 165, - [298] = 194, - [299] = 291, - [300] = 141, - [301] = 164, - [302] = 302, - [303] = 202, - [304] = 196, - [305] = 163, - [306] = 167, - [307] = 193, - [308] = 164, - [309] = 166, - [310] = 166, - [311] = 144, - [312] = 142, - [313] = 143, - [314] = 140, - [315] = 315, - [316] = 159, - [317] = 214, - [318] = 152, - [319] = 153, - [320] = 147, - [321] = 155, - [322] = 315, - [323] = 154, - [324] = 158, - [325] = 315, - [326] = 315, - [327] = 327, - [328] = 151, - [329] = 146, - [330] = 145, - [331] = 150, - [332] = 148, - [333] = 156, - [334] = 315, - [335] = 315, - [336] = 149, - [337] = 157, - [338] = 338, - [339] = 160, - [340] = 315, - [341] = 341, - [342] = 342, - [343] = 343, - [344] = 344, - [345] = 345, - [346] = 214, - [347] = 347, - [348] = 348, - [349] = 166, - [350] = 165, - [351] = 167, - [352] = 163, - [353] = 164, - [354] = 354, - [355] = 355, - [356] = 356, - [357] = 357, - [358] = 295, - [359] = 359, - [360] = 360, - [361] = 361, - [362] = 362, - [363] = 363, - [364] = 193, - [365] = 365, - [366] = 366, - [367] = 367, - [368] = 368, - [369] = 362, - [370] = 370, - [371] = 371, - [372] = 372, - [373] = 194, - [374] = 365, - [375] = 375, - [376] = 376, - [377] = 377, - [378] = 378, - [379] = 379, - [380] = 380, - [381] = 381, - [382] = 382, - [383] = 383, - [384] = 384, - [385] = 385, - [386] = 386, - [387] = 387, - [388] = 388, - [389] = 196, - [390] = 390, - [391] = 391, - [392] = 392, - [393] = 393, - [394] = 394, - [395] = 390, - [396] = 396, - [397] = 202, - [398] = 398, - [399] = 399, - [400] = 400, - [401] = 401, - [402] = 402, - [403] = 403, - [404] = 404, - [405] = 405, - [406] = 406, - [407] = 407, - [408] = 405, - [409] = 409, - [410] = 410, - [411] = 411, - [412] = 407, - [413] = 250, - [414] = 414, - [415] = 415, - [416] = 416, - [417] = 417, - [418] = 418, - [419] = 419, - [420] = 420, - [421] = 421, - [422] = 422, - [423] = 423, - [424] = 424, - [425] = 425, - [426] = 426, - [427] = 427, - [428] = 263, - [429] = 429, - [430] = 430, - [431] = 431, - [432] = 432, - [433] = 433, - [434] = 280, - [435] = 435, - [436] = 436, - [437] = 437, - [438] = 438, - [439] = 439, - [440] = 440, - [441] = 441, - [442] = 442, - [443] = 443, - [444] = 444, - [445] = 445, - [446] = 446, - [447] = 447, - [448] = 448, - [449] = 387, - [450] = 368, - [451] = 451, - [452] = 452, - [453] = 363, - [454] = 383, - [455] = 385, - [456] = 379, - [457] = 457, - [458] = 458, - [459] = 386, - [460] = 384, - [461] = 360, - [462] = 380, - [463] = 463, - [464] = 464, - [465] = 465, - [466] = 372, - [467] = 467, - [468] = 468, - [469] = 469, - [470] = 470, - [471] = 471, - [472] = 472, - [473] = 473, - [474] = 470, - [475] = 475, - [476] = 473, - [477] = 473, - [478] = 470, - [479] = 479, - [480] = 473, - [481] = 481, - [482] = 482, - [483] = 470, - [484] = 473, - [485] = 475, - [486] = 470, - [487] = 487, - [488] = 488, - [489] = 489, - [490] = 490, - [491] = 470, - [492] = 361, - [493] = 493, - [494] = 494, - [495] = 495, - [496] = 496, - [497] = 497, - [498] = 498, - [499] = 366, - [500] = 473, - [501] = 501, - [502] = 381, - [503] = 503, - [504] = 504, - [505] = 505, - [506] = 506, - [507] = 507, - [508] = 508, - [509] = 388, - [510] = 510, - [511] = 511, - [512] = 512, - [513] = 489, - [514] = 514, - [515] = 515, - [516] = 516, - [517] = 517, - [518] = 518, - [519] = 519, - [520] = 520, - [521] = 521, - [522] = 522, - [523] = 523, - [524] = 524, - [525] = 525, - [526] = 526, - [527] = 527, - [528] = 528, - [529] = 529, - [530] = 530, - [531] = 531, - [532] = 532, - [533] = 533, - [534] = 534, - [535] = 535, - [536] = 536, - [537] = 537, - [538] = 538, - [539] = 539, - [540] = 540, - [541] = 541, - [542] = 542, - [543] = 543, - [544] = 503, - [545] = 545, - [546] = 546, - [547] = 547, - [548] = 548, - [549] = 549, - [550] = 550, - [551] = 551, - [552] = 552, - [553] = 553, - [554] = 554, - [555] = 555, - [556] = 556, - [557] = 296, - [558] = 558, - [559] = 559, - [560] = 560, - [561] = 561, - [562] = 562, - [563] = 563, - [564] = 564, - [565] = 565, - [566] = 566, - [567] = 567, - [568] = 523, - [569] = 523, - [570] = 570, - [571] = 571, - [572] = 572, - [573] = 573, - [574] = 574, - [575] = 541, - [576] = 540, - [577] = 537, - [578] = 578, - [579] = 528, - [580] = 526, - [581] = 581, - [582] = 582, - [583] = 583, - [584] = 584, - [585] = 585, - [586] = 586, - [587] = 587, - [588] = 588, - [589] = 589, - [590] = 523, - [591] = 591, - [592] = 567, - [593] = 566, - [594] = 565, - [595] = 541, - [596] = 540, - [597] = 597, - [598] = 598, - [599] = 599, - [600] = 600, - [601] = 601, - [602] = 541, - [603] = 540, - [604] = 604, - [605] = 605, - [606] = 523, - [607] = 582, - [608] = 608, - [609] = 541, - [610] = 540, - [611] = 611, - [612] = 584, - [613] = 523, - [614] = 614, - [615] = 615, - [616] = 541, - [617] = 540, - [618] = 618, - [619] = 619, - [620] = 541, - [621] = 621, - [622] = 622, - [623] = 623, - [624] = 624, - [625] = 625, - [626] = 626, - [627] = 627, - [628] = 531, - [629] = 525, - [630] = 630, - [631] = 631, - [632] = 632, - [633] = 633, - [634] = 634, - [635] = 635, - [636] = 525, - [637] = 637, - [638] = 638, - [639] = 525, - [640] = 640, - [641] = 641, - [642] = 525, - [643] = 643, - [644] = 644, - [645] = 525, - [646] = 646, - [647] = 562, - [648] = 522, - [649] = 547, - [650] = 650, - [651] = 527, - [652] = 599, - [653] = 653, - [654] = 654, - [655] = 655, - [656] = 656, - [657] = 626, - [658] = 623, - [659] = 559, - [660] = 660, - [661] = 585, - [662] = 559, - [663] = 559, - [664] = 559, - [665] = 559, - [666] = 619, - [667] = 561, - [668] = 558, - [669] = 619, - [670] = 619, - [671] = 619, - [672] = 619, - [673] = 624, - [674] = 615, -}; - -static inline bool sym_ident_pattern_token_character_set_1(int32_t c) { - return (c < 43514 - ? (c < 4193 - ? (c < 2707 - ? (c < 1994 - ? (c < 931 - ? (c < 748 - ? (c < 192 - ? (c < 170 - ? (c < 'a' - ? (c >= 'A' && c <= 'Z') - : c <= 'z') - : (c <= 170 || (c < 186 - ? c == 181 - : c <= 186))) - : (c <= 214 || (c < 710 - ? (c < 248 - ? (c >= 216 && c <= 246) - : c <= 705) - : (c <= 721 || (c >= 736 && c <= 740))))) - : (c <= 748 || (c < 895 - ? (c < 886 - ? (c < 880 - ? c == 750 - : c <= 884) - : (c <= 887 || (c >= 891 && c <= 893))) - : (c <= 895 || (c < 908 - ? (c < 904 - ? c == 902 - : c <= 906) - : (c <= 908 || (c >= 910 && c <= 929))))))) - : (c <= 1013 || (c < 1649 - ? (c < 1376 - ? (c < 1329 - ? (c < 1162 - ? (c >= 1015 && c <= 1153) - : c <= 1327) - : (c <= 1366 || c == 1369)) - : (c <= 1416 || (c < 1568 - ? (c < 1519 - ? (c >= 1488 && c <= 1514) - : c <= 1522) - : (c <= 1610 || (c >= 1646 && c <= 1647))))) - : (c <= 1747 || (c < 1791 - ? (c < 1774 - ? (c < 1765 - ? c == 1749 - : c <= 1766) - : (c <= 1775 || (c >= 1786 && c <= 1788))) - : (c <= 1791 || (c < 1869 - ? (c < 1810 - ? c == 1808 - : c <= 1839) - : (c <= 1957 || c == 1969)))))))) - : (c <= 2026 || (c < 2482 - ? (c < 2208 - ? (c < 2088 - ? (c < 2048 - ? (c < 2042 - ? (c >= 2036 && c <= 2037) - : c <= 2042) - : (c <= 2069 || (c < 2084 - ? c == 2074 - : c <= 2084))) - : (c <= 2088 || (c < 2160 - ? (c < 2144 - ? (c >= 2112 && c <= 2136) - : c <= 2154) - : (c <= 2183 || (c >= 2185 && c <= 2190))))) - : (c <= 2249 || (c < 2417 - ? (c < 2384 - ? (c < 2365 - ? (c >= 2308 && c <= 2361) - : c <= 2365) - : (c <= 2384 || (c >= 2392 && c <= 2401))) - : (c <= 2432 || (c < 2451 - ? (c < 2447 - ? (c >= 2437 && c <= 2444) - : c <= 2448) - : (c <= 2472 || (c >= 2474 && c <= 2480))))))) - : (c <= 2482 || (c < 2579 - ? (c < 2527 - ? (c < 2510 - ? (c < 2493 - ? (c >= 2486 && c <= 2489) - : c <= 2493) - : (c <= 2510 || (c >= 2524 && c <= 2525))) - : (c <= 2529 || (c < 2565 - ? (c < 2556 - ? (c >= 2544 && c <= 2545) - : c <= 2556) - : (c <= 2570 || (c >= 2575 && c <= 2576))))) - : (c <= 2600 || (c < 2649 - ? (c < 2613 - ? (c < 2610 - ? (c >= 2602 && c <= 2608) - : c <= 2611) - : (c <= 2614 || (c >= 2616 && c <= 2617))) - : (c <= 2652 || (c < 2693 - ? (c < 2674 - ? c == 2654 - : c <= 2676) - : (c <= 2701 || (c >= 2703 && c <= 2705))))))))))) - : (c <= 2728 || (c < 3242 - ? (c < 2962 - ? (c < 2858 - ? (c < 2784 - ? (c < 2741 - ? (c < 2738 - ? (c >= 2730 && c <= 2736) - : c <= 2739) - : (c <= 2745 || (c < 2768 - ? c == 2749 - : c <= 2768))) - : (c <= 2785 || (c < 2831 - ? (c < 2821 - ? c == 2809 - : c <= 2828) - : (c <= 2832 || (c >= 2835 && c <= 2856))))) - : (c <= 2864 || (c < 2911 - ? (c < 2877 - ? (c < 2869 - ? (c >= 2866 && c <= 2867) - : c <= 2873) - : (c <= 2877 || (c >= 2908 && c <= 2909))) - : (c <= 2913 || (c < 2949 - ? (c < 2947 - ? c == 2929 - : c <= 2947) - : (c <= 2954 || (c >= 2958 && c <= 2960))))))) - : (c <= 2965 || (c < 3090 - ? (c < 2984 - ? (c < 2974 - ? (c < 2972 - ? (c >= 2969 && c <= 2970) - : c <= 2972) - : (c <= 2975 || (c >= 2979 && c <= 2980))) - : (c <= 2986 || (c < 3077 - ? (c < 3024 - ? (c >= 2990 && c <= 3001) - : c <= 3024) - : (c <= 3084 || (c >= 3086 && c <= 3088))))) - : (c <= 3112 || (c < 3168 - ? (c < 3160 - ? (c < 3133 - ? (c >= 3114 && c <= 3129) - : c <= 3133) - : (c <= 3162 || c == 3165)) - : (c <= 3169 || (c < 3214 - ? (c < 3205 - ? c == 3200 - : c <= 3212) - : (c <= 3216 || (c >= 3218 && c <= 3240))))))))) - : (c <= 3251 || (c < 3648 - ? (c < 3412 - ? (c < 3332 - ? (c < 3293 - ? (c < 3261 - ? (c >= 3253 && c <= 3257) - : c <= 3261) - : (c <= 3294 || (c < 3313 - ? (c >= 3296 && c <= 3297) - : c <= 3314))) - : (c <= 3340 || (c < 3389 - ? (c < 3346 - ? (c >= 3342 && c <= 3344) - : c <= 3386) - : (c <= 3389 || c == 3406)))) - : (c <= 3414 || (c < 3507 - ? (c < 3461 - ? (c < 3450 - ? (c >= 3423 && c <= 3425) - : c <= 3455) - : (c <= 3478 || (c >= 3482 && c <= 3505))) - : (c <= 3515 || (c < 3585 - ? (c < 3520 - ? c == 3517 - : c <= 3526) - : (c <= 3632 || c == 3634)))))) - : (c <= 3654 || (c < 3782 - ? (c < 3749 - ? (c < 3718 - ? (c < 3716 - ? (c >= 3713 && c <= 3714) - : c <= 3716) - : (c <= 3722 || (c >= 3724 && c <= 3747))) - : (c <= 3749 || (c < 3773 - ? (c < 3762 - ? (c >= 3751 && c <= 3760) - : c <= 3762) - : (c <= 3773 || (c >= 3776 && c <= 3780))))) - : (c <= 3782 || (c < 3976 - ? (c < 3904 - ? (c < 3840 - ? (c >= 3804 && c <= 3807) - : c <= 3840) - : (c <= 3911 || (c >= 3913 && c <= 3948))) - : (c <= 3980 || (c < 4176 - ? (c < 4159 - ? (c >= 4096 && c <= 4138) - : c <= 4159) - : (c <= 4181 || (c >= 4186 && c <= 4189))))))))))))) - : (c <= 4193 || (c < 8134 - ? (c < 6176 - ? (c < 4808 - ? (c < 4688 - ? (c < 4295 - ? (c < 4213 - ? (c < 4206 - ? (c >= 4197 && c <= 4198) - : c <= 4208) - : (c <= 4225 || (c < 4256 - ? c == 4238 - : c <= 4293))) - : (c <= 4295 || (c < 4348 - ? (c < 4304 - ? c == 4301 - : c <= 4346) - : (c <= 4680 || (c >= 4682 && c <= 4685))))) - : (c <= 4694 || (c < 4752 - ? (c < 4704 - ? (c < 4698 - ? c == 4696 - : c <= 4701) - : (c <= 4744 || (c >= 4746 && c <= 4749))) - : (c <= 4784 || (c < 4800 - ? (c < 4792 - ? (c >= 4786 && c <= 4789) - : c <= 4798) - : (c <= 4800 || (c >= 4802 && c <= 4805))))))) - : (c <= 4822 || (c < 5792 - ? (c < 5024 - ? (c < 4888 - ? (c < 4882 - ? (c >= 4824 && c <= 4880) - : c <= 4885) - : (c <= 4954 || (c >= 4992 && c <= 5007))) - : (c <= 5109 || (c < 5743 - ? (c < 5121 - ? (c >= 5112 && c <= 5117) - : c <= 5740) - : (c <= 5759 || (c >= 5761 && c <= 5786))))) - : (c <= 5866 || (c < 5984 - ? (c < 5919 - ? (c < 5888 - ? (c >= 5870 && c <= 5880) - : c <= 5905) - : (c <= 5937 || (c >= 5952 && c <= 5969))) - : (c <= 5996 || (c < 6103 - ? (c < 6016 - ? (c >= 5998 && c <= 6000) - : c <= 6067) - : (c <= 6103 || c == 6108)))))))) - : (c <= 6264 || (c < 7312 - ? (c < 6823 - ? (c < 6512 - ? (c < 6320 - ? (c < 6314 - ? (c >= 6272 && c <= 6312) - : c <= 6314) - : (c <= 6389 || (c < 6480 - ? (c >= 6400 && c <= 6430) - : c <= 6509))) - : (c <= 6516 || (c < 6656 - ? (c < 6576 - ? (c >= 6528 && c <= 6571) - : c <= 6601) - : (c <= 6678 || (c >= 6688 && c <= 6740))))) - : (c <= 6823 || (c < 7098 - ? (c < 7043 - ? (c < 6981 - ? (c >= 6917 && c <= 6963) - : c <= 6988) - : (c <= 7072 || (c >= 7086 && c <= 7087))) - : (c <= 7141 || (c < 7258 - ? (c < 7245 - ? (c >= 7168 && c <= 7203) - : c <= 7247) - : (c <= 7293 || (c >= 7296 && c <= 7304))))))) - : (c <= 7354 || (c < 8008 - ? (c < 7418 - ? (c < 7406 - ? (c < 7401 - ? (c >= 7357 && c <= 7359) - : c <= 7404) - : (c <= 7411 || (c >= 7413 && c <= 7414))) - : (c <= 7418 || (c < 7960 - ? (c < 7680 - ? (c >= 7424 && c <= 7615) - : c <= 7957) - : (c <= 7965 || (c >= 7968 && c <= 8005))))) - : (c <= 8013 || (c < 8031 - ? (c < 8027 - ? (c < 8025 - ? (c >= 8016 && c <= 8023) - : c <= 8025) - : (c <= 8027 || c == 8029)) - : (c <= 8061 || (c < 8126 - ? (c < 8118 - ? (c >= 8064 && c <= 8116) - : c <= 8124) - : (c <= 8126 || (c >= 8130 && c <= 8132))))))))))) - : (c <= 8140 || (c < 12337 - ? (c < 8544 - ? (c < 8458 - ? (c < 8305 - ? (c < 8160 - ? (c < 8150 - ? (c >= 8144 && c <= 8147) - : c <= 8155) - : (c <= 8172 || (c < 8182 - ? (c >= 8178 && c <= 8180) - : c <= 8188))) - : (c <= 8305 || (c < 8450 - ? (c < 8336 - ? c == 8319 - : c <= 8348) - : (c <= 8450 || c == 8455)))) - : (c <= 8467 || (c < 8488 - ? (c < 8484 - ? (c < 8472 - ? c == 8469 - : c <= 8477) - : (c <= 8484 || c == 8486)) - : (c <= 8488 || (c < 8517 - ? (c < 8508 - ? (c >= 8490 && c <= 8505) - : c <= 8511) - : (c <= 8521 || c == 8526)))))) - : (c <= 8584 || (c < 11680 - ? (c < 11559 - ? (c < 11506 - ? (c < 11499 - ? (c >= 11264 && c <= 11492) - : c <= 11502) - : (c <= 11507 || (c >= 11520 && c <= 11557))) - : (c <= 11559 || (c < 11631 - ? (c < 11568 - ? c == 11565 - : c <= 11623) - : (c <= 11631 || (c >= 11648 && c <= 11670))))) - : (c <= 11686 || (c < 11720 - ? (c < 11704 - ? (c < 11696 - ? (c >= 11688 && c <= 11694) - : c <= 11702) - : (c <= 11710 || (c >= 11712 && c <= 11718))) - : (c <= 11726 || (c < 12293 - ? (c < 11736 - ? (c >= 11728 && c <= 11734) - : c <= 11742) - : (c <= 12295 || (c >= 12321 && c <= 12329))))))))) - : (c <= 12341 || (c < 42891 - ? (c < 19968 - ? (c < 12549 - ? (c < 12445 - ? (c < 12353 - ? (c >= 12344 && c <= 12348) - : c <= 12438) - : (c <= 12447 || (c < 12540 - ? (c >= 12449 && c <= 12538) - : c <= 12543))) - : (c <= 12591 || (c < 12784 - ? (c < 12704 - ? (c >= 12593 && c <= 12686) - : c <= 12735) - : (c <= 12799 || (c >= 13312 && c <= 19903))))) - : (c <= 42124 || (c < 42560 - ? (c < 42512 - ? (c < 42240 - ? (c >= 42192 && c <= 42237) - : c <= 42508) - : (c <= 42527 || (c >= 42538 && c <= 42539))) - : (c <= 42606 || (c < 42775 - ? (c < 42656 - ? (c >= 42623 && c <= 42653) - : c <= 42735) - : (c <= 42783 || (c >= 42786 && c <= 42888))))))) - : (c <= 42954 || (c < 43250 - ? (c < 43011 - ? (c < 42965 - ? (c < 42963 - ? (c >= 42960 && c <= 42961) - : c <= 42963) - : (c <= 42969 || (c >= 42994 && c <= 43009))) - : (c <= 43013 || (c < 43072 - ? (c < 43020 - ? (c >= 43015 && c <= 43018) - : c <= 43042) - : (c <= 43123 || (c >= 43138 && c <= 43187))))) - : (c <= 43255 || (c < 43360 - ? (c < 43274 - ? (c < 43261 - ? c == 43259 - : c <= 43262) - : (c <= 43301 || (c >= 43312 && c <= 43334))) - : (c <= 43388 || (c < 43488 - ? (c < 43471 - ? (c >= 43396 && c <= 43442) - : c <= 43471) - : (c <= 43492 || (c >= 43494 && c <= 43503))))))))))))))) - : (c <= 43518 || (c < 70727 - ? (c < 66956 - ? (c < 64914 - ? (c < 43868 - ? (c < 43714 - ? (c < 43646 - ? (c < 43588 - ? (c < 43584 - ? (c >= 43520 && c <= 43560) - : c <= 43586) - : (c <= 43595 || (c < 43642 - ? (c >= 43616 && c <= 43638) - : c <= 43642))) - : (c <= 43695 || (c < 43705 - ? (c < 43701 - ? c == 43697 - : c <= 43702) - : (c <= 43709 || c == 43712)))) - : (c <= 43714 || (c < 43785 - ? (c < 43762 - ? (c < 43744 - ? (c >= 43739 && c <= 43741) - : c <= 43754) - : (c <= 43764 || (c >= 43777 && c <= 43782))) - : (c <= 43790 || (c < 43816 - ? (c < 43808 - ? (c >= 43793 && c <= 43798) - : c <= 43814) - : (c <= 43822 || (c >= 43824 && c <= 43866))))))) - : (c <= 43881 || (c < 64287 - ? (c < 63744 - ? (c < 55216 - ? (c < 44032 - ? (c >= 43888 && c <= 44002) - : c <= 55203) - : (c <= 55238 || (c >= 55243 && c <= 55291))) - : (c <= 64109 || (c < 64275 - ? (c < 64256 - ? (c >= 64112 && c <= 64217) - : c <= 64262) - : (c <= 64279 || c == 64285)))) - : (c <= 64296 || (c < 64323 - ? (c < 64318 - ? (c < 64312 - ? (c >= 64298 && c <= 64310) - : c <= 64316) - : (c <= 64318 || (c >= 64320 && c <= 64321))) - : (c <= 64324 || (c < 64612 - ? (c < 64467 - ? (c >= 64326 && c <= 64433) - : c <= 64605) - : (c <= 64829 || (c >= 64848 && c <= 64911))))))))) - : (c <= 64967 || (c < 65599 - ? (c < 65382 - ? (c < 65147 - ? (c < 65139 - ? (c < 65137 - ? (c >= 65008 && c <= 65017) - : c <= 65137) - : (c <= 65139 || (c < 65145 - ? c == 65143 - : c <= 65145))) - : (c <= 65147 || (c < 65313 - ? (c < 65151 - ? c == 65149 - : c <= 65276) - : (c <= 65338 || (c >= 65345 && c <= 65370))))) - : (c <= 65437 || (c < 65498 - ? (c < 65482 - ? (c < 65474 - ? (c >= 65440 && c <= 65470) - : c <= 65479) - : (c <= 65487 || (c >= 65490 && c <= 65495))) - : (c <= 65500 || (c < 65576 - ? (c < 65549 - ? (c >= 65536 && c <= 65547) - : c <= 65574) - : (c <= 65594 || (c >= 65596 && c <= 65597))))))) - : (c <= 65613 || (c < 66464 - ? (c < 66208 - ? (c < 65856 - ? (c < 65664 - ? (c >= 65616 && c <= 65629) - : c <= 65786) - : (c <= 65908 || (c >= 66176 && c <= 66204))) - : (c <= 66256 || (c < 66384 - ? (c < 66349 - ? (c >= 66304 && c <= 66335) - : c <= 66378) - : (c <= 66421 || (c >= 66432 && c <= 66461))))) - : (c <= 66499 || (c < 66776 - ? (c < 66560 - ? (c < 66513 - ? (c >= 66504 && c <= 66511) - : c <= 66517) - : (c <= 66717 || (c >= 66736 && c <= 66771))) - : (c <= 66811 || (c < 66928 - ? (c < 66864 - ? (c >= 66816 && c <= 66855) - : c <= 66915) - : (c <= 66938 || (c >= 66940 && c <= 66954))))))))))) - : (c <= 66962 || (c < 68864 - ? (c < 67828 - ? (c < 67506 - ? (c < 67072 - ? (c < 66979 - ? (c < 66967 - ? (c >= 66964 && c <= 66965) - : c <= 66977) - : (c <= 66993 || (c < 67003 - ? (c >= 66995 && c <= 67001) - : c <= 67004))) - : (c <= 67382 || (c < 67456 - ? (c < 67424 - ? (c >= 67392 && c <= 67413) - : c <= 67431) - : (c <= 67461 || (c >= 67463 && c <= 67504))))) - : (c <= 67514 || (c < 67644 - ? (c < 67594 - ? (c < 67592 - ? (c >= 67584 && c <= 67589) - : c <= 67592) - : (c <= 67637 || (c >= 67639 && c <= 67640))) - : (c <= 67644 || (c < 67712 - ? (c < 67680 - ? (c >= 67647 && c <= 67669) - : c <= 67702) - : (c <= 67742 || (c >= 67808 && c <= 67826))))))) - : (c <= 67829 || (c < 68224 - ? (c < 68096 - ? (c < 67968 - ? (c < 67872 - ? (c >= 67840 && c <= 67861) - : c <= 67897) - : (c <= 68023 || (c >= 68030 && c <= 68031))) - : (c <= 68096 || (c < 68121 - ? (c < 68117 - ? (c >= 68112 && c <= 68115) - : c <= 68119) - : (c <= 68149 || (c >= 68192 && c <= 68220))))) - : (c <= 68252 || (c < 68448 - ? (c < 68352 - ? (c < 68297 - ? (c >= 68288 && c <= 68295) - : c <= 68324) - : (c <= 68405 || (c >= 68416 && c <= 68437))) - : (c <= 68466 || (c < 68736 - ? (c < 68608 - ? (c >= 68480 && c <= 68497) - : c <= 68680) - : (c <= 68786 || (c >= 68800 && c <= 68850))))))))) - : (c <= 68899 || (c < 70106 - ? (c < 69749 - ? (c < 69488 - ? (c < 69376 - ? (c < 69296 - ? (c >= 69248 && c <= 69289) - : c <= 69297) - : (c <= 69404 || (c < 69424 - ? c == 69415 - : c <= 69445))) - : (c <= 69505 || (c < 69635 - ? (c < 69600 - ? (c >= 69552 && c <= 69572) - : c <= 69622) - : (c <= 69687 || (c >= 69745 && c <= 69746))))) - : (c <= 69749 || (c < 69959 - ? (c < 69891 - ? (c < 69840 - ? (c >= 69763 && c <= 69807) - : c <= 69864) - : (c <= 69926 || c == 69956)) - : (c <= 69959 || (c < 70019 - ? (c < 70006 - ? (c >= 69968 && c <= 70002) - : c <= 70006) - : (c <= 70066 || (c >= 70081 && c <= 70084))))))) - : (c <= 70106 || (c < 70405 - ? (c < 70280 - ? (c < 70163 - ? (c < 70144 - ? c == 70108 - : c <= 70161) - : (c <= 70187 || (c >= 70272 && c <= 70278))) - : (c <= 70280 || (c < 70303 - ? (c < 70287 - ? (c >= 70282 && c <= 70285) - : c <= 70301) - : (c <= 70312 || (c >= 70320 && c <= 70366))))) - : (c <= 70412 || (c < 70453 - ? (c < 70442 - ? (c < 70419 - ? (c >= 70415 && c <= 70416) - : c <= 70440) - : (c <= 70448 || (c >= 70450 && c <= 70451))) - : (c <= 70457 || (c < 70493 - ? (c < 70480 - ? c == 70461 - : c <= 70480) - : (c <= 70497 || (c >= 70656 && c <= 70708))))))))))))) - : (c <= 70730 || (c < 119894 - ? (c < 73056 - ? (c < 72001 - ? (c < 71424 - ? (c < 71128 - ? (c < 70852 - ? (c < 70784 - ? (c >= 70751 && c <= 70753) - : c <= 70831) - : (c <= 70853 || (c < 71040 - ? c == 70855 - : c <= 71086))) - : (c <= 71131 || (c < 71296 - ? (c < 71236 - ? (c >= 71168 && c <= 71215) - : c <= 71236) - : (c <= 71338 || c == 71352)))) - : (c <= 71450 || (c < 71945 - ? (c < 71840 - ? (c < 71680 - ? (c >= 71488 && c <= 71494) - : c <= 71723) - : (c <= 71903 || (c >= 71935 && c <= 71942))) - : (c <= 71945 || (c < 71960 - ? (c < 71957 - ? (c >= 71948 && c <= 71955) - : c <= 71958) - : (c <= 71983 || c == 71999)))))) - : (c <= 72001 || (c < 72349 - ? (c < 72192 - ? (c < 72161 - ? (c < 72106 - ? (c >= 72096 && c <= 72103) - : c <= 72144) - : (c <= 72161 || c == 72163)) - : (c <= 72192 || (c < 72272 - ? (c < 72250 - ? (c >= 72203 && c <= 72242) - : c <= 72250) - : (c <= 72272 || (c >= 72284 && c <= 72329))))) - : (c <= 72349 || (c < 72818 - ? (c < 72714 - ? (c < 72704 - ? (c >= 72368 && c <= 72440) - : c <= 72712) - : (c <= 72750 || c == 72768)) - : (c <= 72847 || (c < 72971 - ? (c < 72968 - ? (c >= 72960 && c <= 72966) - : c <= 72969) - : (c <= 73008 || c == 73030)))))))) - : (c <= 73061 || (c < 93952 - ? (c < 82944 - ? (c < 73728 - ? (c < 73112 - ? (c < 73066 - ? (c >= 73063 && c <= 73064) - : c <= 73097) - : (c <= 73112 || (c < 73648 - ? (c >= 73440 && c <= 73458) - : c <= 73648))) - : (c <= 74649 || (c < 77712 - ? (c < 74880 - ? (c >= 74752 && c <= 74862) - : c <= 75075) - : (c <= 77808 || (c >= 77824 && c <= 78894))))) - : (c <= 83526 || (c < 92928 - ? (c < 92784 - ? (c < 92736 - ? (c >= 92160 && c <= 92728) - : c <= 92766) - : (c <= 92862 || (c >= 92880 && c <= 92909))) - : (c <= 92975 || (c < 93053 - ? (c < 93027 - ? (c >= 92992 && c <= 92995) - : c <= 93047) - : (c <= 93071 || (c >= 93760 && c <= 93823))))))) - : (c <= 94026 || (c < 110589 - ? (c < 94208 - ? (c < 94176 - ? (c < 94099 - ? c == 94032 - : c <= 94111) - : (c <= 94177 || c == 94179)) - : (c <= 100343 || (c < 110576 - ? (c < 101632 - ? (c >= 100352 && c <= 101589) - : c <= 101640) - : (c <= 110579 || (c >= 110581 && c <= 110587))))) - : (c <= 110590 || (c < 113664 - ? (c < 110948 - ? (c < 110928 - ? (c >= 110592 && c <= 110882) - : c <= 110930) - : (c <= 110951 || (c >= 110960 && c <= 111355))) - : (c <= 113770 || (c < 113808 - ? (c < 113792 - ? (c >= 113776 && c <= 113788) - : c <= 113800) - : (c <= 113817 || (c >= 119808 && c <= 119892))))))))))) - : (c <= 119964 || (c < 125259 - ? (c < 120572 - ? (c < 120086 - ? (c < 119995 - ? (c < 119973 - ? (c < 119970 - ? (c >= 119966 && c <= 119967) - : c <= 119970) - : (c <= 119974 || (c < 119982 - ? (c >= 119977 && c <= 119980) - : c <= 119993))) - : (c <= 119995 || (c < 120071 - ? (c < 120005 - ? (c >= 119997 && c <= 120003) - : c <= 120069) - : (c <= 120074 || (c >= 120077 && c <= 120084))))) - : (c <= 120092 || (c < 120138 - ? (c < 120128 - ? (c < 120123 - ? (c >= 120094 && c <= 120121) - : c <= 120126) - : (c <= 120132 || c == 120134)) - : (c <= 120144 || (c < 120514 - ? (c < 120488 - ? (c >= 120146 && c <= 120485) - : c <= 120512) - : (c <= 120538 || (c >= 120540 && c <= 120570))))))) - : (c <= 120596 || (c < 123191 - ? (c < 120714 - ? (c < 120656 - ? (c < 120630 - ? (c >= 120598 && c <= 120628) - : c <= 120654) - : (c <= 120686 || (c >= 120688 && c <= 120712))) - : (c <= 120744 || (c < 122624 - ? (c < 120772 - ? (c >= 120746 && c <= 120770) - : c <= 120779) - : (c <= 122654 || (c >= 123136 && c <= 123180))))) - : (c <= 123197 || (c < 124904 - ? (c < 123584 - ? (c < 123536 - ? c == 123214 - : c <= 123565) - : (c <= 123627 || (c >= 124896 && c <= 124902))) - : (c <= 124907 || (c < 124928 - ? (c < 124912 - ? (c >= 124909 && c <= 124910) - : c <= 124926) - : (c <= 125124 || (c >= 125184 && c <= 125251))))))))) - : (c <= 125259 || (c < 126559 - ? (c < 126535 - ? (c < 126505 - ? (c < 126497 - ? (c < 126469 - ? (c >= 126464 && c <= 126467) - : c <= 126495) - : (c <= 126498 || (c < 126503 - ? c == 126500 - : c <= 126503))) - : (c <= 126514 || (c < 126523 - ? (c < 126521 - ? (c >= 126516 && c <= 126519) - : c <= 126521) - : (c <= 126523 || c == 126530)))) - : (c <= 126535 || (c < 126548 - ? (c < 126541 - ? (c < 126539 - ? c == 126537 - : c <= 126539) - : (c <= 126543 || (c >= 126545 && c <= 126546))) - : (c <= 126548 || (c < 126555 - ? (c < 126553 - ? c == 126551 - : c <= 126553) - : (c <= 126555 || c == 126557)))))) - : (c <= 126559 || (c < 126625 - ? (c < 126580 - ? (c < 126567 - ? (c < 126564 - ? (c >= 126561 && c <= 126562) - : c <= 126564) - : (c <= 126570 || (c >= 126572 && c <= 126578))) - : (c <= 126583 || (c < 126592 - ? (c < 126590 - ? (c >= 126585 && c <= 126588) - : c <= 126590) - : (c <= 126601 || (c >= 126603 && c <= 126619))))) - : (c <= 126627 || (c < 177984 - ? (c < 131072 - ? (c < 126635 - ? (c >= 126629 && c <= 126633) - : c <= 126651) - : (c <= 173791 || (c >= 173824 && c <= 177976))) - : (c <= 178205 || (c < 194560 - ? (c < 183984 - ? (c >= 178208 && c <= 183969) - : c <= 191456) - : (c <= 195101 || (c >= 196608 && c <= 201546))))))))))))))))); -} - -static inline bool sym_ident_pattern_token_character_set_2(int32_t c) { - return (c < 43616 - ? (c < 3782 - ? (c < 2748 - ? (c < 2045 - ? (c < 1015 - ? (c < 710 - ? (c < 181 - ? (c < '_' - ? (c < 'A' - ? (c >= '0' && c <= '9') - : c <= 'Z') - : (c <= '_' || (c < 170 - ? (c >= 'a' && c <= 'z') - : c <= 170))) - : (c <= 181 || (c < 192 - ? (c < 186 - ? c == 183 - : c <= 186) - : (c <= 214 || (c < 248 - ? (c >= 216 && c <= 246) - : c <= 705))))) - : (c <= 721 || (c < 891 - ? (c < 750 - ? (c < 748 - ? (c >= 736 && c <= 740) - : c <= 748) - : (c <= 750 || (c < 886 - ? (c >= 768 && c <= 884) - : c <= 887))) - : (c <= 893 || (c < 908 - ? (c < 902 - ? c == 895 - : c <= 906) - : (c <= 908 || (c < 931 - ? (c >= 910 && c <= 929) - : c <= 1013))))))) - : (c <= 1153 || (c < 1519 - ? (c < 1425 - ? (c < 1329 - ? (c < 1162 - ? (c >= 1155 && c <= 1159) - : c <= 1327) - : (c <= 1366 || (c < 1376 - ? c == 1369 - : c <= 1416))) - : (c <= 1469 || (c < 1476 - ? (c < 1473 - ? c == 1471 - : c <= 1474) - : (c <= 1477 || (c < 1488 - ? c == 1479 - : c <= 1514))))) - : (c <= 1522 || (c < 1770 - ? (c < 1646 - ? (c < 1568 - ? (c >= 1552 && c <= 1562) - : c <= 1641) - : (c <= 1747 || (c < 1759 - ? (c >= 1749 && c <= 1756) - : c <= 1768))) - : (c <= 1788 || (c < 1869 - ? (c < 1808 - ? c == 1791 - : c <= 1866) - : (c <= 1969 || (c < 2042 - ? (c >= 1984 && c <= 2037) - : c <= 2042))))))))) - : (c <= 2045 || (c < 2558 - ? (c < 2451 - ? (c < 2200 - ? (c < 2144 - ? (c < 2112 - ? (c >= 2048 && c <= 2093) - : c <= 2139) - : (c <= 2154 || (c < 2185 - ? (c >= 2160 && c <= 2183) - : c <= 2190))) - : (c <= 2273 || (c < 2417 - ? (c < 2406 - ? (c >= 2275 && c <= 2403) - : c <= 2415) - : (c <= 2435 || (c < 2447 - ? (c >= 2437 && c <= 2444) - : c <= 2448))))) - : (c <= 2472 || (c < 2507 - ? (c < 2486 - ? (c < 2482 - ? (c >= 2474 && c <= 2480) - : c <= 2482) - : (c <= 2489 || (c < 2503 - ? (c >= 2492 && c <= 2500) - : c <= 2504))) - : (c <= 2510 || (c < 2527 - ? (c < 2524 - ? c == 2519 - : c <= 2525) - : (c <= 2531 || (c < 2556 - ? (c >= 2534 && c <= 2545) - : c <= 2556))))))) - : (c <= 2558 || (c < 2635 - ? (c < 2610 - ? (c < 2575 - ? (c < 2565 - ? (c >= 2561 && c <= 2563) - : c <= 2570) - : (c <= 2576 || (c < 2602 - ? (c >= 2579 && c <= 2600) - : c <= 2608))) - : (c <= 2611 || (c < 2620 - ? (c < 2616 - ? (c >= 2613 && c <= 2614) - : c <= 2617) - : (c <= 2620 || (c < 2631 - ? (c >= 2622 && c <= 2626) - : c <= 2632))))) - : (c <= 2637 || (c < 2693 - ? (c < 2654 - ? (c < 2649 - ? c == 2641 - : c <= 2652) - : (c <= 2654 || (c < 2689 - ? (c >= 2662 && c <= 2677) - : c <= 2691))) - : (c <= 2701 || (c < 2730 - ? (c < 2707 - ? (c >= 2703 && c <= 2705) - : c <= 2728) - : (c <= 2736 || (c < 2741 - ? (c >= 2738 && c <= 2739) - : c <= 2745))))))))))) - : (c <= 2757 || (c < 3168 - ? (c < 2958 - ? (c < 2866 - ? (c < 2809 - ? (c < 2768 - ? (c < 2763 - ? (c >= 2759 && c <= 2761) - : c <= 2765) - : (c <= 2768 || (c < 2790 - ? (c >= 2784 && c <= 2787) - : c <= 2799))) - : (c <= 2815 || (c < 2831 - ? (c < 2821 - ? (c >= 2817 && c <= 2819) - : c <= 2828) - : (c <= 2832 || (c < 2858 - ? (c >= 2835 && c <= 2856) - : c <= 2864))))) - : (c <= 2867 || (c < 2908 - ? (c < 2887 - ? (c < 2876 - ? (c >= 2869 && c <= 2873) - : c <= 2884) - : (c <= 2888 || (c < 2901 - ? (c >= 2891 && c <= 2893) - : c <= 2903))) - : (c <= 2909 || (c < 2929 - ? (c < 2918 - ? (c >= 2911 && c <= 2915) - : c <= 2927) - : (c <= 2929 || (c < 2949 - ? (c >= 2946 && c <= 2947) - : c <= 2954))))))) - : (c <= 2960 || (c < 3031 - ? (c < 2984 - ? (c < 2972 - ? (c < 2969 - ? (c >= 2962 && c <= 2965) - : c <= 2970) - : (c <= 2972 || (c < 2979 - ? (c >= 2974 && c <= 2975) - : c <= 2980))) - : (c <= 2986 || (c < 3014 - ? (c < 3006 - ? (c >= 2990 && c <= 3001) - : c <= 3010) - : (c <= 3016 || (c < 3024 - ? (c >= 3018 && c <= 3021) - : c <= 3024))))) - : (c <= 3031 || (c < 3132 - ? (c < 3086 - ? (c < 3072 - ? (c >= 3046 && c <= 3055) - : c <= 3084) - : (c <= 3088 || (c < 3114 - ? (c >= 3090 && c <= 3112) - : c <= 3129))) - : (c <= 3140 || (c < 3157 - ? (c < 3146 - ? (c >= 3142 && c <= 3144) - : c <= 3149) - : (c <= 3158 || (c < 3165 - ? (c >= 3160 && c <= 3162) - : c <= 3165))))))))) - : (c <= 3171 || (c < 3450 - ? (c < 3293 - ? (c < 3242 - ? (c < 3205 - ? (c < 3200 - ? (c >= 3174 && c <= 3183) - : c <= 3203) - : (c <= 3212 || (c < 3218 - ? (c >= 3214 && c <= 3216) - : c <= 3240))) - : (c <= 3251 || (c < 3270 - ? (c < 3260 - ? (c >= 3253 && c <= 3257) - : c <= 3268) - : (c <= 3272 || (c < 3285 - ? (c >= 3274 && c <= 3277) - : c <= 3286))))) - : (c <= 3294 || (c < 3346 - ? (c < 3313 - ? (c < 3302 - ? (c >= 3296 && c <= 3299) - : c <= 3311) - : (c <= 3314 || (c < 3342 - ? (c >= 3328 && c <= 3340) - : c <= 3344))) - : (c <= 3396 || (c < 3412 - ? (c < 3402 - ? (c >= 3398 && c <= 3400) - : c <= 3406) - : (c <= 3415 || (c < 3430 - ? (c >= 3423 && c <= 3427) - : c <= 3439))))))) - : (c <= 3455 || (c < 3570 - ? (c < 3520 - ? (c < 3482 - ? (c < 3461 - ? (c >= 3457 && c <= 3459) - : c <= 3478) - : (c <= 3505 || (c < 3517 - ? (c >= 3507 && c <= 3515) - : c <= 3517))) - : (c <= 3526 || (c < 3542 - ? (c < 3535 - ? c == 3530 - : c <= 3540) - : (c <= 3542 || (c < 3558 - ? (c >= 3544 && c <= 3551) - : c <= 3567))))) - : (c <= 3571 || (c < 3718 - ? (c < 3664 - ? (c < 3648 - ? (c >= 3585 && c <= 3642) - : c <= 3662) - : (c <= 3673 || (c < 3716 - ? (c >= 3713 && c <= 3714) - : c <= 3716))) - : (c <= 3722 || (c < 3751 - ? (c < 3749 - ? (c >= 3724 && c <= 3747) - : c <= 3749) - : (c <= 3773 || (c >= 3776 && c <= 3780))))))))))))) - : (c <= 3782 || (c < 8025 - ? (c < 5888 - ? (c < 4688 - ? (c < 3953 - ? (c < 3872 - ? (c < 3804 - ? (c < 3792 - ? (c >= 3784 && c <= 3789) - : c <= 3801) - : (c <= 3807 || (c < 3864 - ? c == 3840 - : c <= 3865))) - : (c <= 3881 || (c < 3897 - ? (c < 3895 - ? c == 3893 - : c <= 3895) - : (c <= 3897 || (c < 3913 - ? (c >= 3902 && c <= 3911) - : c <= 3948))))) - : (c <= 3972 || (c < 4256 - ? (c < 4038 - ? (c < 3993 - ? (c >= 3974 && c <= 3991) - : c <= 4028) - : (c <= 4038 || (c < 4176 - ? (c >= 4096 && c <= 4169) - : c <= 4253))) - : (c <= 4293 || (c < 4304 - ? (c < 4301 - ? c == 4295 - : c <= 4301) - : (c <= 4346 || (c < 4682 - ? (c >= 4348 && c <= 4680) - : c <= 4685))))))) - : (c <= 4694 || (c < 4882 - ? (c < 4786 - ? (c < 4704 - ? (c < 4698 - ? c == 4696 - : c <= 4701) - : (c <= 4744 || (c < 4752 - ? (c >= 4746 && c <= 4749) - : c <= 4784))) - : (c <= 4789 || (c < 4802 - ? (c < 4800 - ? (c >= 4792 && c <= 4798) - : c <= 4800) - : (c <= 4805 || (c < 4824 - ? (c >= 4808 && c <= 4822) - : c <= 4880))))) - : (c <= 4885 || (c < 5112 - ? (c < 4969 - ? (c < 4957 - ? (c >= 4888 && c <= 4954) - : c <= 4959) - : (c <= 4977 || (c < 5024 - ? (c >= 4992 && c <= 5007) - : c <= 5109))) - : (c <= 5117 || (c < 5761 - ? (c < 5743 - ? (c >= 5121 && c <= 5740) - : c <= 5759) - : (c <= 5786 || (c < 5870 - ? (c >= 5792 && c <= 5866) - : c <= 5880))))))))) - : (c <= 5909 || (c < 6688 - ? (c < 6176 - ? (c < 6016 - ? (c < 5984 - ? (c < 5952 - ? (c >= 5919 && c <= 5940) - : c <= 5971) - : (c <= 5996 || (c < 6002 - ? (c >= 5998 && c <= 6000) - : c <= 6003))) - : (c <= 6099 || (c < 6112 - ? (c < 6108 - ? c == 6103 - : c <= 6109) - : (c <= 6121 || (c < 6159 - ? (c >= 6155 && c <= 6157) - : c <= 6169))))) - : (c <= 6264 || (c < 6470 - ? (c < 6400 - ? (c < 6320 - ? (c >= 6272 && c <= 6314) - : c <= 6389) - : (c <= 6430 || (c < 6448 - ? (c >= 6432 && c <= 6443) - : c <= 6459))) - : (c <= 6509 || (c < 6576 - ? (c < 6528 - ? (c >= 6512 && c <= 6516) - : c <= 6571) - : (c <= 6601 || (c < 6656 - ? (c >= 6608 && c <= 6618) - : c <= 6683))))))) - : (c <= 6750 || (c < 7232 - ? (c < 6847 - ? (c < 6800 - ? (c < 6783 - ? (c >= 6752 && c <= 6780) - : c <= 6793) - : (c <= 6809 || (c < 6832 - ? c == 6823 - : c <= 6845))) - : (c <= 6862 || (c < 7019 - ? (c < 6992 - ? (c >= 6912 && c <= 6988) - : c <= 7001) - : (c <= 7027 || (c < 7168 - ? (c >= 7040 && c <= 7155) - : c <= 7223))))) - : (c <= 7241 || (c < 7380 - ? (c < 7312 - ? (c < 7296 - ? (c >= 7245 && c <= 7293) - : c <= 7304) - : (c <= 7354 || (c < 7376 - ? (c >= 7357 && c <= 7359) - : c <= 7378))) - : (c <= 7418 || (c < 7968 - ? (c < 7960 - ? (c >= 7424 && c <= 7957) - : c <= 7965) - : (c <= 8005 || (c < 8016 - ? (c >= 8008 && c <= 8013) - : c <= 8023))))))))))) - : (c <= 8025 || (c < 11720 - ? (c < 8458 - ? (c < 8178 - ? (c < 8126 - ? (c < 8031 - ? (c < 8029 - ? c == 8027 - : c <= 8029) - : (c <= 8061 || (c < 8118 - ? (c >= 8064 && c <= 8116) - : c <= 8124))) - : (c <= 8126 || (c < 8144 - ? (c < 8134 - ? (c >= 8130 && c <= 8132) - : c <= 8140) - : (c <= 8147 || (c < 8160 - ? (c >= 8150 && c <= 8155) - : c <= 8172))))) - : (c <= 8180 || (c < 8336 - ? (c < 8276 - ? (c < 8255 - ? (c >= 8182 && c <= 8188) - : c <= 8256) - : (c <= 8276 || (c < 8319 - ? c == 8305 - : c <= 8319))) - : (c <= 8348 || (c < 8421 - ? (c < 8417 - ? (c >= 8400 && c <= 8412) - : c <= 8417) - : (c <= 8432 || (c < 8455 - ? c == 8450 - : c <= 8455))))))) - : (c <= 8467 || (c < 11499 - ? (c < 8490 - ? (c < 8484 - ? (c < 8472 - ? c == 8469 - : c <= 8477) - : (c <= 8484 || (c < 8488 - ? c == 8486 - : c <= 8488))) - : (c <= 8505 || (c < 8526 - ? (c < 8517 - ? (c >= 8508 && c <= 8511) - : c <= 8521) - : (c <= 8526 || (c < 11264 - ? (c >= 8544 && c <= 8584) - : c <= 11492))))) - : (c <= 11507 || (c < 11647 - ? (c < 11565 - ? (c < 11559 - ? (c >= 11520 && c <= 11557) - : c <= 11559) - : (c <= 11565 || (c < 11631 - ? (c >= 11568 && c <= 11623) - : c <= 11631))) - : (c <= 11670 || (c < 11696 - ? (c < 11688 - ? (c >= 11680 && c <= 11686) - : c <= 11694) - : (c <= 11702 || (c < 11712 - ? (c >= 11704 && c <= 11710) - : c <= 11718))))))))) - : (c <= 11726 || (c < 42623 - ? (c < 12540 - ? (c < 12337 - ? (c < 11744 - ? (c < 11736 - ? (c >= 11728 && c <= 11734) - : c <= 11742) - : (c <= 11775 || (c < 12321 - ? (c >= 12293 && c <= 12295) - : c <= 12335))) - : (c <= 12341 || (c < 12441 - ? (c < 12353 - ? (c >= 12344 && c <= 12348) - : c <= 12438) - : (c <= 12442 || (c < 12449 - ? (c >= 12445 && c <= 12447) - : c <= 12538))))) - : (c <= 12543 || (c < 19968 - ? (c < 12704 - ? (c < 12593 - ? (c >= 12549 && c <= 12591) - : c <= 12686) - : (c <= 12735 || (c < 13312 - ? (c >= 12784 && c <= 12799) - : c <= 19903))) - : (c <= 42124 || (c < 42512 - ? (c < 42240 - ? (c >= 42192 && c <= 42237) - : c <= 42508) - : (c <= 42539 || (c < 42612 - ? (c >= 42560 && c <= 42607) - : c <= 42621))))))) - : (c <= 42737 || (c < 43232 - ? (c < 42965 - ? (c < 42891 - ? (c < 42786 - ? (c >= 42775 && c <= 42783) - : c <= 42888) - : (c <= 42954 || (c < 42963 - ? (c >= 42960 && c <= 42961) - : c <= 42963))) - : (c <= 42969 || (c < 43072 - ? (c < 43052 - ? (c >= 42994 && c <= 43047) - : c <= 43052) - : (c <= 43123 || (c < 43216 - ? (c >= 43136 && c <= 43205) - : c <= 43225))))) - : (c <= 43255 || (c < 43471 - ? (c < 43312 - ? (c < 43261 - ? c == 43259 - : c <= 43309) - : (c <= 43347 || (c < 43392 - ? (c >= 43360 && c <= 43388) - : c <= 43456))) - : (c <= 43481 || (c < 43584 - ? (c < 43520 - ? (c >= 43488 && c <= 43518) - : c <= 43574) - : (c <= 43597 || (c >= 43600 && c <= 43609))))))))))))))) - : (c <= 43638 || (c < 71453 - ? (c < 67639 - ? (c < 65345 - ? (c < 64312 - ? (c < 43888 - ? (c < 43785 - ? (c < 43744 - ? (c < 43739 - ? (c >= 43642 && c <= 43714) - : c <= 43741) - : (c <= 43759 || (c < 43777 - ? (c >= 43762 && c <= 43766) - : c <= 43782))) - : (c <= 43790 || (c < 43816 - ? (c < 43808 - ? (c >= 43793 && c <= 43798) - : c <= 43814) - : (c <= 43822 || (c < 43868 - ? (c >= 43824 && c <= 43866) - : c <= 43881))))) - : (c <= 44010 || (c < 63744 - ? (c < 44032 - ? (c < 44016 - ? (c >= 44012 && c <= 44013) - : c <= 44025) - : (c <= 55203 || (c < 55243 - ? (c >= 55216 && c <= 55238) - : c <= 55291))) - : (c <= 64109 || (c < 64275 - ? (c < 64256 - ? (c >= 64112 && c <= 64217) - : c <= 64262) - : (c <= 64279 || (c < 64298 - ? (c >= 64285 && c <= 64296) - : c <= 64310))))))) - : (c <= 64316 || (c < 65075 - ? (c < 64612 - ? (c < 64323 - ? (c < 64320 - ? c == 64318 - : c <= 64321) - : (c <= 64324 || (c < 64467 - ? (c >= 64326 && c <= 64433) - : c <= 64605))) - : (c <= 64829 || (c < 65008 - ? (c < 64914 - ? (c >= 64848 && c <= 64911) - : c <= 64967) - : (c <= 65017 || (c < 65056 - ? (c >= 65024 && c <= 65039) - : c <= 65071))))) - : (c <= 65076 || (c < 65147 - ? (c < 65139 - ? (c < 65137 - ? (c >= 65101 && c <= 65103) - : c <= 65137) - : (c <= 65139 || (c < 65145 - ? c == 65143 - : c <= 65145))) - : (c <= 65147 || (c < 65296 - ? (c < 65151 - ? c == 65149 - : c <= 65276) - : (c <= 65305 || (c < 65343 - ? (c >= 65313 && c <= 65338) - : c <= 65343))))))))) - : (c <= 65370 || (c < 66513 - ? (c < 65664 - ? (c < 65536 - ? (c < 65482 - ? (c < 65474 - ? (c >= 65382 && c <= 65470) - : c <= 65479) - : (c <= 65487 || (c < 65498 - ? (c >= 65490 && c <= 65495) - : c <= 65500))) - : (c <= 65547 || (c < 65596 - ? (c < 65576 - ? (c >= 65549 && c <= 65574) - : c <= 65594) - : (c <= 65597 || (c < 65616 - ? (c >= 65599 && c <= 65613) - : c <= 65629))))) - : (c <= 65786 || (c < 66304 - ? (c < 66176 - ? (c < 66045 - ? (c >= 65856 && c <= 65908) - : c <= 66045) - : (c <= 66204 || (c < 66272 - ? (c >= 66208 && c <= 66256) - : c <= 66272))) - : (c <= 66335 || (c < 66432 - ? (c < 66384 - ? (c >= 66349 && c <= 66378) - : c <= 66426) - : (c <= 66461 || (c < 66504 - ? (c >= 66464 && c <= 66499) - : c <= 66511))))))) - : (c <= 66517 || (c < 66979 - ? (c < 66864 - ? (c < 66736 - ? (c < 66720 - ? (c >= 66560 && c <= 66717) - : c <= 66729) - : (c <= 66771 || (c < 66816 - ? (c >= 66776 && c <= 66811) - : c <= 66855))) - : (c <= 66915 || (c < 66956 - ? (c < 66940 - ? (c >= 66928 && c <= 66938) - : c <= 66954) - : (c <= 66962 || (c < 66967 - ? (c >= 66964 && c <= 66965) - : c <= 66977))))) - : (c <= 66993 || (c < 67456 - ? (c < 67072 - ? (c < 67003 - ? (c >= 66995 && c <= 67001) - : c <= 67004) - : (c <= 67382 || (c < 67424 - ? (c >= 67392 && c <= 67413) - : c <= 67431))) - : (c <= 67461 || (c < 67584 - ? (c < 67506 - ? (c >= 67463 && c <= 67504) - : c <= 67514) - : (c <= 67589 || (c < 67594 - ? c == 67592 - : c <= 67637))))))))))) - : (c <= 67640 || (c < 69956 - ? (c < 68448 - ? (c < 68101 - ? (c < 67828 - ? (c < 67680 - ? (c < 67647 - ? c == 67644 - : c <= 67669) - : (c <= 67702 || (c < 67808 - ? (c >= 67712 && c <= 67742) - : c <= 67826))) - : (c <= 67829 || (c < 67968 - ? (c < 67872 - ? (c >= 67840 && c <= 67861) - : c <= 67897) - : (c <= 68023 || (c < 68096 - ? (c >= 68030 && c <= 68031) - : c <= 68099))))) - : (c <= 68102 || (c < 68192 - ? (c < 68121 - ? (c < 68117 - ? (c >= 68108 && c <= 68115) - : c <= 68119) - : (c <= 68149 || (c < 68159 - ? (c >= 68152 && c <= 68154) - : c <= 68159))) - : (c <= 68220 || (c < 68297 - ? (c < 68288 - ? (c >= 68224 && c <= 68252) - : c <= 68295) - : (c <= 68326 || (c < 68416 - ? (c >= 68352 && c <= 68405) - : c <= 68437))))))) - : (c <= 68466 || (c < 69424 - ? (c < 68912 - ? (c < 68736 - ? (c < 68608 - ? (c >= 68480 && c <= 68497) - : c <= 68680) - : (c <= 68786 || (c < 68864 - ? (c >= 68800 && c <= 68850) - : c <= 68903))) - : (c <= 68921 || (c < 69296 - ? (c < 69291 - ? (c >= 69248 && c <= 69289) - : c <= 69292) - : (c <= 69297 || (c < 69415 - ? (c >= 69376 && c <= 69404) - : c <= 69415))))) - : (c <= 69456 || (c < 69759 - ? (c < 69600 - ? (c < 69552 - ? (c >= 69488 && c <= 69509) - : c <= 69572) - : (c <= 69622 || (c < 69734 - ? (c >= 69632 && c <= 69702) - : c <= 69749))) - : (c <= 69818 || (c < 69872 - ? (c < 69840 - ? c == 69826 - : c <= 69864) - : (c <= 69881 || (c < 69942 - ? (c >= 69888 && c <= 69940) - : c <= 69951))))))))) - : (c <= 69959 || (c < 70459 - ? (c < 70282 - ? (c < 70108 - ? (c < 70016 - ? (c < 70006 - ? (c >= 69968 && c <= 70003) - : c <= 70006) - : (c <= 70084 || (c < 70094 - ? (c >= 70089 && c <= 70092) - : c <= 70106))) - : (c <= 70108 || (c < 70206 - ? (c < 70163 - ? (c >= 70144 && c <= 70161) - : c <= 70199) - : (c <= 70206 || (c < 70280 - ? (c >= 70272 && c <= 70278) - : c <= 70280))))) - : (c <= 70285 || (c < 70405 - ? (c < 70320 - ? (c < 70303 - ? (c >= 70287 && c <= 70301) - : c <= 70312) - : (c <= 70378 || (c < 70400 - ? (c >= 70384 && c <= 70393) - : c <= 70403))) - : (c <= 70412 || (c < 70442 - ? (c < 70419 - ? (c >= 70415 && c <= 70416) - : c <= 70440) - : (c <= 70448 || (c < 70453 - ? (c >= 70450 && c <= 70451) - : c <= 70457))))))) - : (c <= 70468 || (c < 70855 - ? (c < 70502 - ? (c < 70480 - ? (c < 70475 - ? (c >= 70471 && c <= 70472) - : c <= 70477) - : (c <= 70480 || (c < 70493 - ? c == 70487 - : c <= 70499))) - : (c <= 70508 || (c < 70736 - ? (c < 70656 - ? (c >= 70512 && c <= 70516) - : c <= 70730) - : (c <= 70745 || (c < 70784 - ? (c >= 70750 && c <= 70753) - : c <= 70853))))) - : (c <= 70855 || (c < 71236 - ? (c < 71096 - ? (c < 71040 - ? (c >= 70864 && c <= 70873) - : c <= 71093) - : (c <= 71104 || (c < 71168 - ? (c >= 71128 && c <= 71133) - : c <= 71232))) - : (c <= 71236 || (c < 71360 - ? (c < 71296 - ? (c >= 71248 && c <= 71257) - : c <= 71352) - : (c <= 71369 || (c >= 71424 && c <= 71450))))))))))))) - : (c <= 71467 || (c < 119973 - ? (c < 77824 - ? (c < 72760 - ? (c < 72016 - ? (c < 71945 - ? (c < 71680 - ? (c < 71488 - ? (c >= 71472 && c <= 71481) - : c <= 71494) - : (c <= 71738 || (c < 71935 - ? (c >= 71840 && c <= 71913) - : c <= 71942))) - : (c <= 71945 || (c < 71960 - ? (c < 71957 - ? (c >= 71948 && c <= 71955) - : c <= 71958) - : (c <= 71989 || (c < 71995 - ? (c >= 71991 && c <= 71992) - : c <= 72003))))) - : (c <= 72025 || (c < 72263 - ? (c < 72154 - ? (c < 72106 - ? (c >= 72096 && c <= 72103) - : c <= 72151) - : (c <= 72161 || (c < 72192 - ? (c >= 72163 && c <= 72164) - : c <= 72254))) - : (c <= 72263 || (c < 72368 - ? (c < 72349 - ? (c >= 72272 && c <= 72345) - : c <= 72349) - : (c <= 72440 || (c < 72714 - ? (c >= 72704 && c <= 72712) - : c <= 72758))))))) - : (c <= 72768 || (c < 73056 - ? (c < 72968 - ? (c < 72850 - ? (c < 72818 - ? (c >= 72784 && c <= 72793) - : c <= 72847) - : (c <= 72871 || (c < 72960 - ? (c >= 72873 && c <= 72886) - : c <= 72966))) - : (c <= 72969 || (c < 73020 - ? (c < 73018 - ? (c >= 72971 && c <= 73014) - : c <= 73018) - : (c <= 73021 || (c < 73040 - ? (c >= 73023 && c <= 73031) - : c <= 73049))))) - : (c <= 73061 || (c < 73440 - ? (c < 73104 - ? (c < 73066 - ? (c >= 73063 && c <= 73064) - : c <= 73102) - : (c <= 73105 || (c < 73120 - ? (c >= 73107 && c <= 73112) - : c <= 73129))) - : (c <= 73462 || (c < 74752 - ? (c < 73728 - ? c == 73648 - : c <= 74649) - : (c <= 74862 || (c < 77712 - ? (c >= 74880 && c <= 75075) - : c <= 77808))))))))) - : (c <= 78894 || (c < 110576 - ? (c < 93027 - ? (c < 92864 - ? (c < 92736 - ? (c < 92160 - ? (c >= 82944 && c <= 83526) - : c <= 92728) - : (c <= 92766 || (c < 92784 - ? (c >= 92768 && c <= 92777) - : c <= 92862))) - : (c <= 92873 || (c < 92928 - ? (c < 92912 - ? (c >= 92880 && c <= 92909) - : c <= 92916) - : (c <= 92982 || (c < 93008 - ? (c >= 92992 && c <= 92995) - : c <= 93017))))) - : (c <= 93047 || (c < 94176 - ? (c < 93952 - ? (c < 93760 - ? (c >= 93053 && c <= 93071) - : c <= 93823) - : (c <= 94026 || (c < 94095 - ? (c >= 94031 && c <= 94087) - : c <= 94111))) - : (c <= 94177 || (c < 94208 - ? (c < 94192 - ? (c >= 94179 && c <= 94180) - : c <= 94193) - : (c <= 100343 || (c < 101632 - ? (c >= 100352 && c <= 101589) - : c <= 101640))))))) - : (c <= 110579 || (c < 118528 - ? (c < 110960 - ? (c < 110592 - ? (c < 110589 - ? (c >= 110581 && c <= 110587) - : c <= 110590) - : (c <= 110882 || (c < 110948 - ? (c >= 110928 && c <= 110930) - : c <= 110951))) - : (c <= 111355 || (c < 113792 - ? (c < 113776 - ? (c >= 113664 && c <= 113770) - : c <= 113788) - : (c <= 113800 || (c < 113821 - ? (c >= 113808 && c <= 113817) - : c <= 113822))))) - : (c <= 118573 || (c < 119210 - ? (c < 119149 - ? (c < 119141 - ? (c >= 118576 && c <= 118598) - : c <= 119145) - : (c <= 119154 || (c < 119173 - ? (c >= 119163 && c <= 119170) - : c <= 119179))) - : (c <= 119213 || (c < 119894 - ? (c < 119808 - ? (c >= 119362 && c <= 119364) - : c <= 119892) - : (c <= 119964 || (c < 119970 - ? (c >= 119966 && c <= 119967) - : c <= 119970))))))))))) - : (c <= 119974 || (c < 124912 - ? (c < 120746 - ? (c < 120134 - ? (c < 120071 - ? (c < 119995 - ? (c < 119982 - ? (c >= 119977 && c <= 119980) - : c <= 119993) - : (c <= 119995 || (c < 120005 - ? (c >= 119997 && c <= 120003) - : c <= 120069))) - : (c <= 120074 || (c < 120094 - ? (c < 120086 - ? (c >= 120077 && c <= 120084) - : c <= 120092) - : (c <= 120121 || (c < 120128 - ? (c >= 120123 && c <= 120126) - : c <= 120132))))) - : (c <= 120134 || (c < 120572 - ? (c < 120488 - ? (c < 120146 - ? (c >= 120138 && c <= 120144) - : c <= 120485) - : (c <= 120512 || (c < 120540 - ? (c >= 120514 && c <= 120538) - : c <= 120570))) - : (c <= 120596 || (c < 120656 - ? (c < 120630 - ? (c >= 120598 && c <= 120628) - : c <= 120654) - : (c <= 120686 || (c < 120714 - ? (c >= 120688 && c <= 120712) - : c <= 120744))))))) - : (c <= 120770 || (c < 122907 - ? (c < 121476 - ? (c < 121344 - ? (c < 120782 - ? (c >= 120772 && c <= 120779) - : c <= 120831) - : (c <= 121398 || (c < 121461 - ? (c >= 121403 && c <= 121452) - : c <= 121461))) - : (c <= 121476 || (c < 122624 - ? (c < 121505 - ? (c >= 121499 && c <= 121503) - : c <= 121519) - : (c <= 122654 || (c < 122888 - ? (c >= 122880 && c <= 122886) - : c <= 122904))))) - : (c <= 122913 || (c < 123214 - ? (c < 123136 - ? (c < 122918 - ? (c >= 122915 && c <= 122916) - : c <= 122922) - : (c <= 123180 || (c < 123200 - ? (c >= 123184 && c <= 123197) - : c <= 123209))) - : (c <= 123214 || (c < 124896 - ? (c < 123584 - ? (c >= 123536 && c <= 123566) - : c <= 123641) - : (c <= 124902 || (c < 124909 - ? (c >= 124904 && c <= 124907) - : c <= 124910))))))))) - : (c <= 124926 || (c < 126557 - ? (c < 126521 - ? (c < 126469 - ? (c < 125184 - ? (c < 125136 - ? (c >= 124928 && c <= 125124) - : c <= 125142) - : (c <= 125259 || (c < 126464 - ? (c >= 125264 && c <= 125273) - : c <= 126467))) - : (c <= 126495 || (c < 126503 - ? (c < 126500 - ? (c >= 126497 && c <= 126498) - : c <= 126500) - : (c <= 126503 || (c < 126516 - ? (c >= 126505 && c <= 126514) - : c <= 126519))))) - : (c <= 126521 || (c < 126541 - ? (c < 126535 - ? (c < 126530 - ? c == 126523 - : c <= 126530) - : (c <= 126535 || (c < 126539 - ? c == 126537 - : c <= 126539))) - : (c <= 126543 || (c < 126551 - ? (c < 126548 - ? (c >= 126545 && c <= 126546) - : c <= 126548) - : (c <= 126551 || (c < 126555 - ? c == 126553 - : c <= 126555))))))) - : (c <= 126557 || (c < 126629 - ? (c < 126580 - ? (c < 126564 - ? (c < 126561 - ? c == 126559 - : c <= 126562) - : (c <= 126564 || (c < 126572 - ? (c >= 126567 && c <= 126570) - : c <= 126578))) - : (c <= 126583 || (c < 126592 - ? (c < 126590 - ? (c >= 126585 && c <= 126588) - : c <= 126590) - : (c <= 126601 || (c < 126625 - ? (c >= 126603 && c <= 126619) - : c <= 126627))))) - : (c <= 126633 || (c < 178208 - ? (c < 131072 - ? (c < 130032 - ? (c >= 126635 && c <= 126651) - : c <= 130041) - : (c <= 173791 || (c < 177984 - ? (c >= 173824 && c <= 177976) - : c <= 178205))) - : (c <= 183969 || (c < 196608 - ? (c < 194560 - ? (c >= 183984 && c <= 191456) - : c <= 195101) - : (c <= 201546 || (c >= 917760 && c <= 917999))))))))))))))))); -} - -static bool ts_lex(TSLexer *lexer, TSStateId state) { - START_LEXER(); - eof = lexer->eof(lexer); - switch (state) { - case 0: - if (eof) ADVANCE(79); - if (lookahead == '!') ADVANCE(121); - if (lookahead == '%') ADVANCE(131); - if (lookahead == '&') ADVANCE(127); - if (lookahead == '(') ADVANCE(106); - if (lookahead == ')') ADVANCE(108); - if (lookahead == '*') ADVANCE(124); - if (lookahead == '+') ADVANCE(133); - if (lookahead == ',') ADVANCE(107); - if (lookahead == '-') ADVANCE(119); - if (lookahead == '.') ADVANCE(117); - if (lookahead == '/') ADVANCE(129); - if (lookahead == '0') ADVANCE(82); - if (lookahead == ':') ADVANCE(111); - if (lookahead == ';') ADVANCE(80); - if (lookahead == '=') ADVANCE(113); - if (lookahead == '@') ADVANCE(105); - if (lookahead == '[') ADVANCE(114); - if (lookahead == ']') ADVANCE(115); - if (lookahead == '^') ADVANCE(141); - if (lookahead == '_') ADVANCE(142); - if (lookahead == '{') ADVANCE(109); - if (lookahead == '|') ADVANCE(138); - if (lookahead == '}') ADVANCE(110); - if (lookahead == '~') ADVANCE(122); - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(84); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ' || - lookahead == 133 || - lookahead == 8206 || - lookahead == 8207 || - lookahead == 8232 || - lookahead == 8233) ADVANCE(164); - if (sym_ident_pattern_token_character_set_1(lookahead)) ADVANCE(154); - END_STATE(); - case 1: - if (lookahead == '!') ADVANCE(17); - if (lookahead == '%') ADVANCE(130); - if (lookahead == '&') ADVANCE(126); - if (lookahead == '(') ADVANCE(106); - if (lookahead == ')') ADVANCE(108); - if (lookahead == '*') ADVANCE(123); - if (lookahead == '+') ADVANCE(132); - if (lookahead == ',') ADVANCE(107); - if (lookahead == '-') ADVANCE(118); - if (lookahead == '.') ADVANCE(116); - if (lookahead == '/') ADVANCE(128); - if (lookahead == ':') ADVANCE(111); - if (lookahead == ';') ADVANCE(80); - if (lookahead == '=') ADVANCE(21); - if (lookahead == '[') ADVANCE(114); - if (lookahead == ']') ADVANCE(115); - if (lookahead == '^') ADVANCE(140); - if (lookahead == '{') ADVANCE(109); - if (lookahead == '|') ADVANCE(139); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ' || - lookahead == 133 || - lookahead == 8206 || - lookahead == 8207 || - lookahead == 8232 || - lookahead == 8233) ADVANCE(164); - END_STATE(); - case 2: - if (lookahead == '%') ADVANCE(130); - if (lookahead == '&') ADVANCE(125); - if (lookahead == '(') ADVANCE(106); - if (lookahead == ')') ADVANCE(108); - if (lookahead == '*') ADVANCE(123); - if (lookahead == '+') ADVANCE(132); - if (lookahead == ',') ADVANCE(107); - if (lookahead == '-') ADVANCE(118); - if (lookahead == '.') ADVANCE(116); - if (lookahead == '/') ADVANCE(128); - if (lookahead == ':') ADVANCE(111); - if (lookahead == ';') ADVANCE(80); - if (lookahead == '=') ADVANCE(112); - if (lookahead == '[') ADVANCE(114); - if (lookahead == ']') ADVANCE(115); - if (lookahead == '^') ADVANCE(140); - if (lookahead == '{') ADVANCE(109); - if (lookahead == '|') ADVANCE(139); - if (lookahead == '}') ADVANCE(110); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ' || - lookahead == 133 || - lookahead == 8206 || - lookahead == 8207 || - lookahead == 8232 || - lookahead == 8233) ADVANCE(164); - END_STATE(); - case 3: - if (lookahead == '%') ADVANCE(18); - if (lookahead == '&') ADVANCE(19); - if (lookahead == '(') ADVANCE(106); - if (lookahead == '*') ADVANCE(20); - if (lookahead == '+') ADVANCE(4); - if (lookahead == '-') ADVANCE(5); - if (lookahead == '.') ADVANCE(116); - if (lookahead == '/') ADVANCE(8); - if (lookahead == '=') ADVANCE(112); - if (lookahead == '[') ADVANCE(114); - if (lookahead == '^') ADVANCE(22); - if (lookahead == '_') ADVANCE(77); - if (lookahead == '{') ADVANCE(109); - if (lookahead == '|') ADVANCE(23); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ' || - lookahead == 133 || - lookahead == 8206 || - lookahead == 8207 || - lookahead == 8232 || - lookahead == 8233) ADVANCE(164); - if (sym_ident_pattern_token_character_set_1(lookahead)) ADVANCE(154); - END_STATE(); - case 4: - if (lookahead == '+') ADVANCE(151); - if (lookahead == '=') ADVANCE(143); - END_STATE(); - case 5: - if (lookahead == '-') ADVANCE(152); - if (lookahead == '=') ADVANCE(144); - if (lookahead == '>') ADVANCE(153); - END_STATE(); - case 6: - if (lookahead == '.') ADVANCE(93); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(63); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(6); - END_STATE(); - case 7: - if (lookahead == '.') ADVANCE(76); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(86); - END_STATE(); - case 8: - if (lookahead == '/') ADVANCE(163); - if (lookahead == '=') ADVANCE(146); - if (lookahead == '[') ADVANCE(44); - END_STATE(); - case 9: - if (lookahead == '/') ADVANCE(155); - if (lookahead == '[') ADVANCE(46); - END_STATE(); - case 10: - if (lookahead == '/') ADVANCE(159); - if (lookahead == '[') ADVANCE(53); - END_STATE(); - case 11: - if (lookahead == '/') ADVANCE(156); - if (lookahead == '[') ADVANCE(47); - END_STATE(); - case 12: - if (lookahead == '/') ADVANCE(160); - if (lookahead == '[') ADVANCE(54); - END_STATE(); - case 13: - if (lookahead == '/') ADVANCE(157); - if (lookahead == '[') ADVANCE(45); - END_STATE(); - case 14: - if (lookahead == '/') ADVANCE(161); - if (lookahead == '[') ADVANCE(52); - END_STATE(); - case 15: - if (lookahead == '/') ADVANCE(158); - END_STATE(); - case 16: - if (lookahead == '/') ADVANCE(162); - END_STATE(); - case 17: - if (lookahead == '=') ADVANCE(135); - END_STATE(); - case 18: - if (lookahead == '=') ADVANCE(147); - END_STATE(); - case 19: - if (lookahead == '=') ADVANCE(148); - END_STATE(); - case 20: - if (lookahead == '=') ADVANCE(145); - END_STATE(); - case 21: - if (lookahead == '=') ADVANCE(134); - END_STATE(); - case 22: - if (lookahead == '=') ADVANCE(150); - END_STATE(); - case 23: - if (lookahead == '=') ADVANCE(149); - END_STATE(); - case 24: - if (lookahead == ']') ADVANCE(9); - END_STATE(); - case 25: - if (lookahead == ']') ADVANCE(15); - END_STATE(); - case 26: - if (lookahead == ']') ADVANCE(10); - END_STATE(); - case 27: - if (lookahead == ']') ADVANCE(16); - END_STATE(); - case 28: - if (lookahead == ']') ADVANCE(11); - END_STATE(); - case 29: - if (lookahead == ']') ADVANCE(12); - END_STATE(); - case 30: - if (lookahead == ']') ADVANCE(13); - END_STATE(); - case 31: - if (lookahead == ']') ADVANCE(14); - END_STATE(); - case 32: - if (lookahead == 'a') ADVANCE(24); - END_STATE(); - case 33: - if (lookahead == 'a') ADVANCE(25); - END_STATE(); - case 34: - if (lookahead == 'a') ADVANCE(28); - END_STATE(); - case 35: - if (lookahead == 'a') ADVANCE(30); - END_STATE(); - case 36: - if (lookahead == 'b') ADVANCE(32); - END_STATE(); - case 37: - if (lookahead == 'b') ADVANCE(33); - END_STATE(); - case 38: - if (lookahead == 'b') ADVANCE(34); - END_STATE(); - case 39: - if (lookahead == 'b') ADVANCE(35); - END_STATE(); - case 40: - if (lookahead == 'g') ADVANCE(36); - END_STATE(); - case 41: - if (lookahead == 'g') ADVANCE(37); - END_STATE(); - case 42: - if (lookahead == 'g') ADVANCE(38); - END_STATE(); - case 43: - if (lookahead == 'g') ADVANCE(39); - END_STATE(); - case 44: - if (lookahead == 'r') ADVANCE(40); - if (lookahead == 'x') ADVANCE(55); - END_STATE(); - case 45: - if (lookahead == 'r') ADVANCE(41); - END_STATE(); - case 46: - if (lookahead == 'r') ADVANCE(42); - END_STATE(); - case 47: - if (lookahead == 'r') ADVANCE(43); - END_STATE(); - case 48: - if (lookahead == 'w') ADVANCE(27); - END_STATE(); - case 49: - if (lookahead == 'w') ADVANCE(26); - END_STATE(); - case 50: - if (lookahead == 'w') ADVANCE(29); - END_STATE(); - case 51: - if (lookahead == 'w') ADVANCE(31); - END_STATE(); - case 52: - if (lookahead == 'x') ADVANCE(56); - END_STATE(); - case 53: - if (lookahead == 'x') ADVANCE(57); - END_STATE(); - case 54: - if (lookahead == 'x') ADVANCE(58); - END_STATE(); - case 55: - if (lookahead == 'y') ADVANCE(59); - END_STATE(); - case 56: - if (lookahead == 'y') ADVANCE(60); - END_STATE(); - case 57: - if (lookahead == 'y') ADVANCE(61); - END_STATE(); - case 58: - if (lookahead == 'y') ADVANCE(62); - END_STATE(); - case 59: - if (lookahead == 'z') ADVANCE(49); - END_STATE(); - case 60: - if (lookahead == 'z') ADVANCE(48); - END_STATE(); - case 61: - if (lookahead == 'z') ADVANCE(50); - END_STATE(); - case 62: - if (lookahead == 'z') ADVANCE(51); - END_STATE(); - case 63: - if (lookahead == '+' || - lookahead == '-') ADVANCE(70); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(96); - END_STATE(); - case 64: - if (lookahead == '+' || - lookahead == '-') ADVANCE(71); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(91); - END_STATE(); - case 65: - if (lookahead == '+' || - lookahead == '-') ADVANCE(72); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(94); - END_STATE(); - case 66: - if (lookahead == '+' || - lookahead == '-') ADVANCE(73); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(104); - END_STATE(); - case 67: - if (lookahead == '+' || - lookahead == '-') ADVANCE(74); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(99); - END_STATE(); - case 68: - if (lookahead == '+' || - lookahead == '-') ADVANCE(75); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(102); - END_STATE(); - case 69: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(90); - END_STATE(); - case 70: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(96); - END_STATE(); - case 71: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(91); - END_STATE(); - case 72: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(94); - END_STATE(); - case 73: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(104); - END_STATE(); - case 74: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(99); - END_STATE(); - case 75: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(102); - END_STATE(); - case 76: - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(98); - END_STATE(); - case 77: - if (sym_ident_pattern_token_character_set_2(lookahead)) ADVANCE(154); - END_STATE(); - case 78: - if (eof) ADVANCE(79); - if (lookahead == '!') ADVANCE(120); - if (lookahead == '%') ADVANCE(130); - if (lookahead == '&') ADVANCE(125); - if (lookahead == '(') ADVANCE(106); - if (lookahead == ')') ADVANCE(108); - if (lookahead == '*') ADVANCE(123); - if (lookahead == '+') ADVANCE(132); - if (lookahead == ',') ADVANCE(107); - if (lookahead == '-') ADVANCE(118); - if (lookahead == '.') ADVANCE(69); - if (lookahead == '/') ADVANCE(128); - if (lookahead == '0') ADVANCE(82); - if (lookahead == ':') ADVANCE(111); - if (lookahead == ';') ADVANCE(80); - if (lookahead == '=') ADVANCE(112); - if (lookahead == '@') ADVANCE(105); - if (lookahead == ']') ADVANCE(115); - if (lookahead == '^') ADVANCE(140); - if (lookahead == '_') ADVANCE(142); - if (lookahead == '{') ADVANCE(109); - if (lookahead == '|') ADVANCE(139); - if (lookahead == '}') ADVANCE(110); - if (lookahead == '~') ADVANCE(122); - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(84); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ' || - lookahead == 133 || - lookahead == 8206 || - lookahead == 8207 || - lookahead == 8232 || - lookahead == 8233) ADVANCE(164); - if (sym_ident_pattern_token_character_set_1(lookahead)) ADVANCE(154); - END_STATE(); - case 79: - ACCEPT_TOKEN(ts_builtin_sym_end); - END_STATE(); - case 80: - ACCEPT_TOKEN(anon_sym_SEMI); - END_STATE(); - case 81: - ACCEPT_TOKEN(aux_sym_decimal_int_literal_token1); - END_STATE(); - case 82: - ACCEPT_TOKEN(aux_sym_decimal_int_literal_token1); - if (lookahead == '.') ADVANCE(93); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(63); - if (lookahead == 'X' || - lookahead == 'x') ADVANCE(7); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(87); - if (lookahead == 'i' || - lookahead == 'u') ADVANCE(81); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(6); - END_STATE(); - case 83: - ACCEPT_TOKEN(aux_sym_decimal_int_literal_token2); - END_STATE(); - case 84: - ACCEPT_TOKEN(aux_sym_decimal_int_literal_token2); - if (lookahead == '.') ADVANCE(93); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(63); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(88); - if (lookahead == 'i' || - lookahead == 'u') ADVANCE(83); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(84); - END_STATE(); - case 85: - ACCEPT_TOKEN(sym_hex_int_literal); - END_STATE(); - case 86: - ACCEPT_TOKEN(sym_hex_int_literal); - if (lookahead == '.') ADVANCE(101); - if (lookahead == 'P' || - lookahead == 'p') ADVANCE(66); - if (lookahead == 'i' || - lookahead == 'u') ADVANCE(85); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(86); - END_STATE(); - case 87: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token1); - END_STATE(); - case 88: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token2); - END_STATE(); - case 89: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); - END_STATE(); - case 90: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(64); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(89); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(90); - END_STATE(); - case 91: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(89); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(91); - END_STATE(); - case 92: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); - END_STATE(); - case 93: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(65); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(92); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(90); - END_STATE(); - case 94: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(92); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(94); - END_STATE(); - case 95: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token5); - END_STATE(); - case 96: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token5); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(95); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(96); - END_STATE(); - case 97: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); - END_STATE(); - case 98: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); - if (lookahead == 'P' || - lookahead == 'p') ADVANCE(67); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(98); - END_STATE(); - case 99: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(97); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(99); - END_STATE(); - case 100: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); - END_STATE(); - case 101: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); - if (lookahead == 'P' || - lookahead == 'p') ADVANCE(68); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(98); - END_STATE(); - case 102: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(100); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(102); - END_STATE(); - case 103: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token3); - END_STATE(); - case 104: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token3); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(103); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(104); - END_STATE(); - case 105: - ACCEPT_TOKEN(anon_sym_AT); - END_STATE(); - case 106: - ACCEPT_TOKEN(anon_sym_LPAREN); - END_STATE(); - case 107: - ACCEPT_TOKEN(anon_sym_COMMA); - END_STATE(); - case 108: - ACCEPT_TOKEN(anon_sym_RPAREN); - END_STATE(); - case 109: - ACCEPT_TOKEN(anon_sym_LBRACE); - END_STATE(); - case 110: - ACCEPT_TOKEN(anon_sym_RBRACE); - END_STATE(); - case 111: - ACCEPT_TOKEN(anon_sym_COLON); - END_STATE(); - case 112: - ACCEPT_TOKEN(anon_sym_EQ); - END_STATE(); - case 113: - ACCEPT_TOKEN(anon_sym_EQ); - if (lookahead == '=') ADVANCE(134); - END_STATE(); - case 114: - ACCEPT_TOKEN(anon_sym_LBRACK); - END_STATE(); - case 115: - ACCEPT_TOKEN(anon_sym_RBRACK); - END_STATE(); - case 116: - ACCEPT_TOKEN(anon_sym_DOT); - END_STATE(); - case 117: - ACCEPT_TOKEN(anon_sym_DOT); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(90); - END_STATE(); - case 118: - ACCEPT_TOKEN(anon_sym_DASH); - END_STATE(); - case 119: - ACCEPT_TOKEN(anon_sym_DASH); - if (lookahead == '=') ADVANCE(144); - if (lookahead == '>') ADVANCE(153); - END_STATE(); - case 120: - ACCEPT_TOKEN(anon_sym_BANG); - END_STATE(); - case 121: - ACCEPT_TOKEN(anon_sym_BANG); - if (lookahead == '=') ADVANCE(135); - END_STATE(); - case 122: - ACCEPT_TOKEN(anon_sym_TILDE); - END_STATE(); - case 123: - ACCEPT_TOKEN(anon_sym_STAR); - END_STATE(); - case 124: - ACCEPT_TOKEN(anon_sym_STAR); - if (lookahead == '=') ADVANCE(145); - END_STATE(); - case 125: - ACCEPT_TOKEN(anon_sym_AMP); - END_STATE(); - case 126: - ACCEPT_TOKEN(anon_sym_AMP); - if (lookahead == '&') ADVANCE(136); - END_STATE(); - case 127: - ACCEPT_TOKEN(anon_sym_AMP); - if (lookahead == '&') ADVANCE(136); - if (lookahead == '=') ADVANCE(148); - END_STATE(); - case 128: - ACCEPT_TOKEN(anon_sym_SLASH); - if (lookahead == '/') ADVANCE(163); - END_STATE(); - case 129: - ACCEPT_TOKEN(anon_sym_SLASH); - if (lookahead == '/') ADVANCE(163); - if (lookahead == '=') ADVANCE(146); - if (lookahead == '[') ADVANCE(44); - END_STATE(); - case 130: - ACCEPT_TOKEN(anon_sym_PERCENT); - END_STATE(); - case 131: - ACCEPT_TOKEN(anon_sym_PERCENT); - if (lookahead == '=') ADVANCE(147); - END_STATE(); - case 132: - ACCEPT_TOKEN(anon_sym_PLUS); - END_STATE(); - case 133: - ACCEPT_TOKEN(anon_sym_PLUS); - if (lookahead == '+') ADVANCE(151); - if (lookahead == '=') ADVANCE(143); - END_STATE(); - case 134: - ACCEPT_TOKEN(anon_sym_EQ_EQ); - END_STATE(); - case 135: - ACCEPT_TOKEN(anon_sym_BANG_EQ); - END_STATE(); - case 136: - ACCEPT_TOKEN(anon_sym_AMP_AMP); - END_STATE(); - case 137: - ACCEPT_TOKEN(anon_sym_PIPE_PIPE); - END_STATE(); - case 138: - ACCEPT_TOKEN(anon_sym_PIPE); - if (lookahead == '=') ADVANCE(149); - if (lookahead == '|') ADVANCE(137); - END_STATE(); - case 139: - ACCEPT_TOKEN(anon_sym_PIPE); - if (lookahead == '|') ADVANCE(137); - END_STATE(); - case 140: - ACCEPT_TOKEN(anon_sym_CARET); - END_STATE(); - case 141: - ACCEPT_TOKEN(anon_sym_CARET); - if (lookahead == '=') ADVANCE(150); - END_STATE(); - case 142: - ACCEPT_TOKEN(anon_sym__); - if (sym_ident_pattern_token_character_set_2(lookahead)) ADVANCE(154); - END_STATE(); - case 143: - ACCEPT_TOKEN(anon_sym_PLUS_EQ); - END_STATE(); - case 144: - ACCEPT_TOKEN(anon_sym_DASH_EQ); - END_STATE(); - case 145: - ACCEPT_TOKEN(anon_sym_STAR_EQ); - END_STATE(); - case 146: - ACCEPT_TOKEN(anon_sym_SLASH_EQ); - END_STATE(); - case 147: - ACCEPT_TOKEN(anon_sym_PERCENT_EQ); - END_STATE(); - case 148: - ACCEPT_TOKEN(anon_sym_AMP_EQ); - END_STATE(); - case 149: - ACCEPT_TOKEN(anon_sym_PIPE_EQ); - END_STATE(); - case 150: - ACCEPT_TOKEN(anon_sym_CARET_EQ); - END_STATE(); - case 151: - ACCEPT_TOKEN(anon_sym_PLUS_PLUS); - END_STATE(); - case 152: - ACCEPT_TOKEN(anon_sym_DASH_DASH); - END_STATE(); - case 153: - ACCEPT_TOKEN(anon_sym_DASH_GT); - END_STATE(); - case 154: - ACCEPT_TOKEN(sym_ident_pattern_token); - if (sym_ident_pattern_token_character_set_2(lookahead)) ADVANCE(154); - END_STATE(); - case 155: - ACCEPT_TOKEN(anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH); - END_STATE(); - case 156: - ACCEPT_TOKEN(anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH); - END_STATE(); - case 157: - ACCEPT_TOKEN(anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH); - END_STATE(); - case 158: - ACCEPT_TOKEN(anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH); - END_STATE(); - case 159: - ACCEPT_TOKEN(anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH); - END_STATE(); - case 160: - ACCEPT_TOKEN(anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH); - END_STATE(); - case 161: - ACCEPT_TOKEN(anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH); - END_STATE(); - case 162: - ACCEPT_TOKEN(anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH); - END_STATE(); - case 163: - ACCEPT_TOKEN(sym__comment); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(163); - END_STATE(); - case 164: - ACCEPT_TOKEN(sym__blankspace); - 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 == 'C') ADVANCE(1); - if (lookahead == 'D') ADVANCE(2); - if (lookahead == 'G') ADVANCE(3); - if (lookahead == 'H') ADVANCE(4); - if (lookahead == 'N') ADVANCE(5); - if (lookahead == 'S') ADVANCE(6); - if (lookahead == 'a') ADVANCE(7); - if (lookahead == 'b') ADVANCE(8); - if (lookahead == 'c') ADVANCE(9); - if (lookahead == 'd') ADVANCE(10); - if (lookahead == 'e') ADVANCE(11); - if (lookahead == 'f') ADVANCE(12); - if (lookahead == 'g') ADVANCE(13); - if (lookahead == 'h') ADVANCE(14); - if (lookahead == 'i') ADVANCE(15); - if (lookahead == 'l') ADVANCE(16); - if (lookahead == 'm') ADVANCE(17); - if (lookahead == 'n') ADVANCE(18); - if (lookahead == 'o') ADVANCE(19); - if (lookahead == 'p') ADVANCE(20); - if (lookahead == 'q') ADVANCE(21); - if (lookahead == 'r') ADVANCE(22); - if (lookahead == 's') ADVANCE(23); - if (lookahead == 't') ADVANCE(24); - if (lookahead == 'u') ADVANCE(25); - if (lookahead == 'v') ADVANCE(26); - if (lookahead == 'w') ADVANCE(27); - if (lookahead == 'y') ADVANCE(28); - END_STATE(); - case 1: - if (lookahead == 'o') ADVANCE(29); - END_STATE(); - case 2: - if (lookahead == 'o') ADVANCE(30); - END_STATE(); - case 3: - if (lookahead == 'e') ADVANCE(31); - END_STATE(); - case 4: - if (lookahead == 'u') ADVANCE(32); - END_STATE(); - case 5: - if (lookahead == 'U') ADVANCE(33); - END_STATE(); - case 6: - if (lookahead == 'e') ADVANCE(34); - END_STATE(); - case 7: - if (lookahead == 'b') ADVANCE(35); - if (lookahead == 'c') ADVANCE(36); - if (lookahead == 'l') ADVANCE(37); - if (lookahead == 'r') ADVANCE(38); - if (lookahead == 's') ADVANCE(39); - if (lookahead == 't') ADVANCE(40); - if (lookahead == 'u') ADVANCE(41); - if (lookahead == 'w') ADVANCE(42); - END_STATE(); - case 8: - if (lookahead == 'e') ADVANCE(43); - if (lookahead == 'f') ADVANCE(44); - if (lookahead == 'g') ADVANCE(45); - if (lookahead == 'i') ADVANCE(46); - if (lookahead == 'o') ADVANCE(47); - if (lookahead == 'r') ADVANCE(48); - if (lookahead == 'u') ADVANCE(49); - END_STATE(); - case 9: - if (lookahead == 'a') ADVANCE(50); - if (lookahead == 'e') ADVANCE(51); - if (lookahead == 'l') ADVANCE(52); - if (lookahead == 'o') ADVANCE(53); - if (lookahead == 'r') ADVANCE(54); - END_STATE(); - case 10: - if (lookahead == 'e') ADVANCE(55); - if (lookahead == 'i') ADVANCE(56); - if (lookahead == 'o') ADVANCE(57); - if (lookahead == 'y') ADVANCE(58); - END_STATE(); - case 11: - if (lookahead == 'l') ADVANCE(59); - if (lookahead == 'n') ADVANCE(60); - if (lookahead == 'x') ADVANCE(61); - END_STATE(); - case 12: - if (lookahead == '1') ADVANCE(62); - if (lookahead == '3') ADVANCE(63); - if (lookahead == '6') ADVANCE(64); - if (lookahead == 'a') ADVANCE(65); - if (lookahead == 'i') ADVANCE(66); - if (lookahead == 'l') ADVANCE(67); - if (lookahead == 'n') ADVANCE(68); - if (lookahead == 'o') ADVANCE(69); - if (lookahead == 'r') ADVANCE(70); - if (lookahead == 'u') ADVANCE(71); - if (lookahead == 'x') ADVANCE(72); - END_STATE(); - case 13: - if (lookahead == 'e') ADVANCE(73); - if (lookahead == 'l') ADVANCE(74); - if (lookahead == 'o') ADVANCE(75); - if (lookahead == 'r') ADVANCE(76); - END_STATE(); - case 14: - if (lookahead == 'a') ADVANCE(77); - if (lookahead == 'i') ADVANCE(78); - END_STATE(); - case 15: - if (lookahead == '1') ADVANCE(79); - if (lookahead == '3') ADVANCE(80); - if (lookahead == '6') ADVANCE(81); - if (lookahead == '8') ADVANCE(82); - if (lookahead == 'd') ADVANCE(83); - if (lookahead == 'f') ADVANCE(84); - if (lookahead == 'm') ADVANCE(85); - if (lookahead == 'n') ADVANCE(86); - END_STATE(); - case 16: - if (lookahead == 'a') ADVANCE(87); - if (lookahead == 'e') ADVANCE(88); - if (lookahead == 'i') ADVANCE(89); - if (lookahead == 'o') ADVANCE(90); - END_STATE(); - case 17: - if (lookahead == 'a') ADVANCE(91); - if (lookahead == 'e') ADVANCE(92); - if (lookahead == 'o') ADVANCE(93); - if (lookahead == 'u') ADVANCE(94); - END_STATE(); - case 18: - if (lookahead == 'a') ADVANCE(95); - if (lookahead == 'e') ADVANCE(96); - if (lookahead == 'i') ADVANCE(97); - if (lookahead == 'o') ADVANCE(98); - if (lookahead == 'u') ADVANCE(99); - END_STATE(); - case 19: - if (lookahead == 'f') ADVANCE(100); - if (lookahead == 'p') ADVANCE(101); - if (lookahead == 'v') ADVANCE(102); - END_STATE(); - case 20: - if (lookahead == 'a') ADVANCE(103); - if (lookahead == 'e') ADVANCE(104); - if (lookahead == 'i') ADVANCE(105); - if (lookahead == 'o') ADVANCE(106); - if (lookahead == 'r') ADVANCE(107); - if (lookahead == 't') ADVANCE(108); - if (lookahead == 'u') ADVANCE(109); - END_STATE(); - case 21: - if (lookahead == 'u') ADVANCE(110); - END_STATE(); - case 22: - if (lookahead == '3') ADVANCE(111); - if (lookahead == 'e') ADVANCE(112); - if (lookahead == 'g') ADVANCE(113); - END_STATE(); - case 23: - if (lookahead == 'a') ADVANCE(114); - if (lookahead == 'e') ADVANCE(115); - if (lookahead == 'h') ADVANCE(116); - if (lookahead == 'i') ADVANCE(117); - if (lookahead == 'm') ADVANCE(118); - if (lookahead == 'n') ADVANCE(119); - if (lookahead == 't') ADVANCE(120); - if (lookahead == 'u') ADVANCE(121); - if (lookahead == 'w') ADVANCE(122); - END_STATE(); - case 24: - if (lookahead == 'a') ADVANCE(123); - if (lookahead == 'e') ADVANCE(124); - if (lookahead == 'h') ADVANCE(125); - if (lookahead == 'r') ADVANCE(126); - if (lookahead == 'y') ADVANCE(127); - END_STATE(); - case 25: - if (lookahead == '1') ADVANCE(128); - if (lookahead == '3') ADVANCE(129); - if (lookahead == '6') ADVANCE(130); - if (lookahead == '8') ADVANCE(131); - if (lookahead == 'n') ADVANCE(132); - if (lookahead == 's') ADVANCE(133); - END_STATE(); - case 26: - if (lookahead == 'a') ADVANCE(134); - if (lookahead == 'e') ADVANCE(135); - if (lookahead == 'i') ADVANCE(136); - if (lookahead == 'o') ADVANCE(137); - END_STATE(); - case 27: - if (lookahead == 'g') ADVANCE(138); - if (lookahead == 'h') ADVANCE(139); - if (lookahead == 'i') ADVANCE(140); - if (lookahead == 'o') ADVANCE(141); - if (lookahead == 'r') ADVANCE(142); - END_STATE(); - case 28: - if (lookahead == 'i') ADVANCE(143); - END_STATE(); - case 29: - if (lookahead == 'm') ADVANCE(144); - END_STATE(); - case 30: - if (lookahead == 'm') ADVANCE(145); - END_STATE(); - case 31: - if (lookahead == 'o') ADVANCE(146); - END_STATE(); - case 32: - if (lookahead == 'l') ADVANCE(147); - END_STATE(); - case 33: - if (lookahead == 'L') ADVANCE(148); - END_STATE(); - case 34: - if (lookahead == 'l') ADVANCE(149); - END_STATE(); - case 35: - if (lookahead == 's') ADVANCE(150); - END_STATE(); - case 36: - if (lookahead == 't') ADVANCE(151); - END_STATE(); - case 37: - if (lookahead == 'i') ADVANCE(152); - END_STATE(); - case 38: - if (lookahead == 'r') ADVANCE(153); - END_STATE(); - case 39: - ACCEPT_TOKEN(anon_sym_as); - if (lookahead == 'm') ADVANCE(154); - if (lookahead == 'y') ADVANCE(155); - END_STATE(); - case 40: - if (lookahead == 'o') ADVANCE(156); - if (lookahead == 't') ADVANCE(157); - END_STATE(); - case 41: - if (lookahead == 't') ADVANCE(158); - END_STATE(); - case 42: - if (lookahead == 'a') ADVANCE(159); - END_STATE(); - case 43: - if (lookahead == 'c') ADVANCE(160); - END_STATE(); - case 44: - if (lookahead == '1') ADVANCE(161); - END_STATE(); - case 45: - if (lookahead == 'r') ADVANCE(162); - END_STATE(); - case 46: - if (lookahead == 'n') ADVANCE(163); - if (lookahead == 't') ADVANCE(164); - END_STATE(); - case 47: - if (lookahead == 'o') ADVANCE(165); - END_STATE(); - case 48: - if (lookahead == 'e') ADVANCE(166); - END_STATE(); - case 49: - if (lookahead == 'i') ADVANCE(167); - END_STATE(); - case 50: - if (lookahead == 's') ADVANCE(168); - if (lookahead == 't') ADVANCE(169); - END_STATE(); - case 51: - if (lookahead == 'n') ADVANCE(170); - END_STATE(); - case 52: - if (lookahead == 'a') ADVANCE(171); - END_STATE(); - case 53: - if (lookahead == '_') ADVANCE(172); - if (lookahead == 'h') ADVANCE(173); - if (lookahead == 'l') ADVANCE(174); - if (lookahead == 'm') ADVANCE(175); - if (lookahead == 'n') ADVANCE(176); - END_STATE(); - case 54: - if (lookahead == 'a') ADVANCE(177); - END_STATE(); - case 55: - if (lookahead == 'b') ADVANCE(178); - if (lookahead == 'c') ADVANCE(179); - if (lookahead == 'f') ADVANCE(180); - if (lookahead == 'l') ADVANCE(181); - if (lookahead == 'm') ADVANCE(182); - END_STATE(); - case 56: - if (lookahead == 's') ADVANCE(183); - END_STATE(); - case 57: - ACCEPT_TOKEN(anon_sym_do); - END_STATE(); - case 58: - if (lookahead == 'n') ADVANCE(184); - END_STATE(); - case 59: - if (lookahead == 's') ADVANCE(185); - END_STATE(); - case 60: - if (lookahead == 'a') ADVANCE(186); - if (lookahead == 'u') ADVANCE(187); - END_STATE(); - case 61: - if (lookahead == 'p') ADVANCE(188); - if (lookahead == 't') ADVANCE(189); - END_STATE(); - case 62: - if (lookahead == '6') ADVANCE(190); - END_STATE(); - case 63: - if (lookahead == '2') ADVANCE(191); - END_STATE(); - case 64: - if (lookahead == '4') ADVANCE(192); - END_STATE(); - case 65: - if (lookahead == 'l') ADVANCE(193); - END_STATE(); - case 66: - if (lookahead == 'l') ADVANCE(194); - if (lookahead == 'n') ADVANCE(195); - END_STATE(); - case 67: - if (lookahead == 'a') ADVANCE(196); - END_STATE(); - case 68: - ACCEPT_TOKEN(anon_sym_fn); - END_STATE(); - case 69: - if (lookahead == 'r') ADVANCE(197); - END_STATE(); - case 70: - if (lookahead == 'a') ADVANCE(198); - if (lookahead == 'i') ADVANCE(199); - if (lookahead == 'o') ADVANCE(200); - END_STATE(); - case 71: - if (lookahead == 'n') ADVANCE(201); - END_STATE(); - case 72: - if (lookahead == 'g') ADVANCE(202); - END_STATE(); - case 73: - if (lookahead == 't') ADVANCE(203); - END_STATE(); - case 74: - if (lookahead == 'o') ADVANCE(204); - END_STATE(); - case 75: - if (lookahead == 't') ADVANCE(205); - END_STATE(); - case 76: - if (lookahead == 'o') ADVANCE(206); - END_STATE(); - case 77: - if (lookahead == 'n') ADVANCE(207); - END_STATE(); - case 78: - if (lookahead == 'g') ADVANCE(208); - END_STATE(); - case 79: - if (lookahead == '6') ADVANCE(209); - END_STATE(); - case 80: - if (lookahead == '2') ADVANCE(210); - END_STATE(); - case 81: - if (lookahead == '4') ADVANCE(211); - END_STATE(); - case 82: - ACCEPT_TOKEN(anon_sym_i8); - END_STATE(); - case 83: - ACCEPT_TOKEN(anon_sym_id); - END_STATE(); - case 84: - ACCEPT_TOKEN(anon_sym_if); - END_STATE(); - case 85: - if (lookahead == 'p') ADVANCE(212); - END_STATE(); - case 86: - if (lookahead == 'l') ADVANCE(213); - if (lookahead == 'o') ADVANCE(214); - if (lookahead == 's') ADVANCE(215); - if (lookahead == 't') ADVANCE(216); - if (lookahead == 'v') ADVANCE(217); - END_STATE(); - case 87: - if (lookahead == 'y') ADVANCE(218); - END_STATE(); - case 88: - if (lookahead == 't') ADVANCE(219); - END_STATE(); - case 89: - if (lookahead == 'n') ADVANCE(220); - END_STATE(); - case 90: - if (lookahead == 'c') ADVANCE(221); - if (lookahead == 'o') ADVANCE(222); - if (lookahead == 'w') ADVANCE(223); - END_STATE(); - case 91: - if (lookahead == 'c') ADVANCE(224); - if (lookahead == 't') ADVANCE(225); - END_STATE(); - case 92: - if (lookahead == 'd') ADVANCE(226); - if (lookahead == 't') ADVANCE(227); - END_STATE(); - case 93: - if (lookahead == 'd') ADVANCE(228); - if (lookahead == 'v') ADVANCE(229); - END_STATE(); - case 94: - if (lookahead == 't') ADVANCE(230); - END_STATE(); - case 95: - if (lookahead == 'm') ADVANCE(231); - END_STATE(); - case 96: - if (lookahead == 'w') ADVANCE(232); - END_STATE(); - case 97: - if (lookahead == 'l') ADVANCE(233); - END_STATE(); - case 98: - if (lookahead == 'e') ADVANCE(234); - if (lookahead == 'i') ADVANCE(235); - if (lookahead == 'p') ADVANCE(236); - END_STATE(); - case 99: - if (lookahead == 'l') ADVANCE(237); - if (lookahead == 'm') ADVANCE(238); - END_STATE(); - case 100: - ACCEPT_TOKEN(anon_sym_of); - END_STATE(); - case 101: - if (lookahead == 'e') ADVANCE(239); - END_STATE(); - case 102: - if (lookahead == 'e') ADVANCE(240); - END_STATE(); - case 103: - if (lookahead == 'c') ADVANCE(241); - if (lookahead == 'r') ADVANCE(242); - if (lookahead == 's') ADVANCE(243); - if (lookahead == 't') ADVANCE(244); - END_STATE(); - case 104: - if (lookahead == 'r') ADVANCE(245); - END_STATE(); - case 105: - if (lookahead == 'x') ADVANCE(246); - END_STATE(); - case 106: - if (lookahead == 's') ADVANCE(247); - END_STATE(); - case 107: - if (lookahead == 'e') ADVANCE(248); - if (lookahead == 'i') ADVANCE(249); - if (lookahead == 'o') ADVANCE(250); - END_STATE(); - case 108: - if (lookahead == 'r') ADVANCE(251); - END_STATE(); - case 109: - if (lookahead == 'b') ADVANCE(252); - END_STATE(); - case 110: - if (lookahead == 'a') ADVANCE(253); - END_STATE(); - case 111: - if (lookahead == '2') ADVANCE(254); - END_STATE(); - case 112: - if (lookahead == 'a') ADVANCE(255); - if (lookahead == 'f') ADVANCE(256); - if (lookahead == 'g') ADVANCE(257); - if (lookahead == 'i') ADVANCE(258); - if (lookahead == 'q') ADVANCE(259); - if (lookahead == 's') ADVANCE(260); - if (lookahead == 't') ADVANCE(261); - END_STATE(); - case 113: - if (lookahead == '3') ADVANCE(262); - if (lookahead == 'b') ADVANCE(263); - END_STATE(); - case 114: - if (lookahead == 'm') ADVANCE(264); - END_STATE(); - case 115: - if (lookahead == 'l') ADVANCE(265); - if (lookahead == 't') ADVANCE(266); - END_STATE(); - case 116: - if (lookahead == 'a') ADVANCE(267); - END_STATE(); - case 117: - if (lookahead == 'g') ADVANCE(268); - if (lookahead == 'z') ADVANCE(269); - END_STATE(); - case 118: - if (lookahead == 'o') ADVANCE(270); - END_STATE(); - case 119: - if (lookahead == 'o') ADVANCE(271); - END_STATE(); - case 120: - if (lookahead == 'a') ADVANCE(272); - if (lookahead == 'd') ADVANCE(273); - if (lookahead == 'o') ADVANCE(274); - if (lookahead == 'r') ADVANCE(275); - END_STATE(); - case 121: - if (lookahead == 'b') ADVANCE(276); - if (lookahead == 'p') ADVANCE(277); - END_STATE(); - case 122: - if (lookahead == 'i') ADVANCE(278); - END_STATE(); - case 123: - if (lookahead == 'r') ADVANCE(279); - END_STATE(); - case 124: - if (lookahead == 'm') ADVANCE(280); - if (lookahead == 'x') ADVANCE(281); - END_STATE(); - case 125: - if (lookahead == 'i') ADVANCE(282); - if (lookahead == 'r') ADVANCE(283); - END_STATE(); - case 126: - if (lookahead == 'a') ADVANCE(284); - if (lookahead == 'u') ADVANCE(285); - if (lookahead == 'y') ADVANCE(286); - END_STATE(); - case 127: - if (lookahead == 'p') ADVANCE(287); - END_STATE(); - case 128: - if (lookahead == '6') ADVANCE(288); - END_STATE(); - case 129: - if (lookahead == '2') ADVANCE(289); - END_STATE(); - case 130: - if (lookahead == '4') ADVANCE(290); - END_STATE(); - case 131: - ACCEPT_TOKEN(anon_sym_u8); - END_STATE(); - case 132: - if (lookahead == 'i') ADVANCE(291); - if (lookahead == 'l') ADVANCE(292); - if (lookahead == 'o') ADVANCE(293); - if (lookahead == 's') ADVANCE(294); - END_STATE(); - case 133: - if (lookahead == 'e') ADVANCE(295); - if (lookahead == 'i') ADVANCE(296); - END_STATE(); - case 134: - if (lookahead == 'r') ADVANCE(297); - END_STATE(); - case 135: - if (lookahead == 'c') ADVANCE(298); - if (lookahead == 'r') ADVANCE(299); - END_STATE(); - case 136: - if (lookahead == 'r') ADVANCE(300); - END_STATE(); - case 137: - if (lookahead == 'l') ADVANCE(301); - END_STATE(); - case 138: - if (lookahead == 's') ADVANCE(302); - END_STATE(); - case 139: - if (lookahead == 'e') ADVANCE(303); - if (lookahead == 'i') ADVANCE(304); - END_STATE(); - case 140: - if (lookahead == 't') ADVANCE(305); - END_STATE(); - case 141: - if (lookahead == 'r') ADVANCE(306); - END_STATE(); - case 142: - if (lookahead == 'i') ADVANCE(307); - END_STATE(); - case 143: - if (lookahead == 'e') ADVANCE(308); - END_STATE(); - case 144: - if (lookahead == 'p') ADVANCE(309); - END_STATE(); - case 145: - if (lookahead == 'a') ADVANCE(310); - END_STATE(); - case 146: - if (lookahead == 'm') ADVANCE(311); - END_STATE(); - case 147: - if (lookahead == 'l') ADVANCE(312); - END_STATE(); - case 148: - if (lookahead == 'L') ADVANCE(313); - END_STATE(); - case 149: - if (lookahead == 'f') ADVANCE(314); - END_STATE(); - case 150: - if (lookahead == 't') ADVANCE(315); - END_STATE(); - case 151: - if (lookahead == 'i') ADVANCE(316); - END_STATE(); - case 152: - if (lookahead == 'a') ADVANCE(317); - if (lookahead == 'g') ADVANCE(318); - END_STATE(); - case 153: - if (lookahead == 'a') ADVANCE(319); - END_STATE(); - case 154: - ACCEPT_TOKEN(anon_sym_asm); - if (lookahead == '_') ADVANCE(320); - END_STATE(); - case 155: - if (lookahead == 'n') ADVANCE(321); - END_STATE(); - case 156: - if (lookahead == 'm') ADVANCE(322); - END_STATE(); - case 157: - if (lookahead == 'r') ADVANCE(323); - END_STATE(); - case 158: - if (lookahead == 'o') ADVANCE(324); - END_STATE(); - case 159: - if (lookahead == 'i') ADVANCE(325); - END_STATE(); - case 160: - if (lookahead == 'o') ADVANCE(326); - END_STATE(); - case 161: - if (lookahead == '6') ADVANCE(327); - END_STATE(); - case 162: - if (lookahead == 'a') ADVANCE(328); - END_STATE(); - case 163: - if (lookahead == 'd') ADVANCE(329); - END_STATE(); - case 164: - if (lookahead == 'c') ADVANCE(330); - END_STATE(); - case 165: - if (lookahead == 'l') ADVANCE(331); - END_STATE(); - case 166: - if (lookahead == 'a') ADVANCE(332); - END_STATE(); - case 167: - if (lookahead == 'l') ADVANCE(333); - END_STATE(); - case 168: - if (lookahead == 'e') ADVANCE(334); - if (lookahead == 't') ADVANCE(335); - END_STATE(); - case 169: - if (lookahead == 'c') ADVANCE(336); - END_STATE(); - case 170: - if (lookahead == 't') ADVANCE(337); - END_STATE(); - case 171: - if (lookahead == 's') ADVANCE(338); - END_STATE(); - case 172: - if (lookahead == 'a') ADVANCE(339); - if (lookahead == 'r') ADVANCE(340); - if (lookahead == 'y') ADVANCE(341); - END_STATE(); - case 173: - if (lookahead == 'e') ADVANCE(342); - END_STATE(); - case 174: - if (lookahead == 'u') ADVANCE(343); - END_STATE(); - case 175: - if (lookahead == 'm') ADVANCE(344); - if (lookahead == 'p') ADVANCE(345); - END_STATE(); - case 176: - if (lookahead == 'c') ADVANCE(346); - if (lookahead == 's') ADVANCE(347); - if (lookahead == 't') ADVANCE(348); - END_STATE(); - case 177: - if (lookahead == 't') ADVANCE(349); - END_STATE(); - case 178: - if (lookahead == 'u') ADVANCE(350); - END_STATE(); - case 179: - if (lookahead == 'l') ADVANCE(351); - END_STATE(); - case 180: - if (lookahead == 'a') ADVANCE(352); - END_STATE(); - case 181: - if (lookahead == 'e') ADVANCE(353); - END_STATE(); - case 182: - if (lookahead == 'o') ADVANCE(354); - END_STATE(); - case 183: - if (lookahead == 'c') ADVANCE(355); - END_STATE(); - case 184: - if (lookahead == 'a') ADVANCE(356); - END_STATE(); - case 185: - if (lookahead == 'e') ADVANCE(357); - END_STATE(); - case 186: - if (lookahead == 'b') ADVANCE(358); - END_STATE(); - case 187: - if (lookahead == 'm') ADVANCE(359); - END_STATE(); - case 188: - if (lookahead == 'l') ADVANCE(360); - if (lookahead == 'o') ADVANCE(361); - END_STATE(); - case 189: - if (lookahead == 'e') ADVANCE(362); - END_STATE(); - case 190: - ACCEPT_TOKEN(anon_sym_f16); - END_STATE(); - case 191: - ACCEPT_TOKEN(anon_sym_f32); - END_STATE(); - case 192: - ACCEPT_TOKEN(anon_sym_f64); - END_STATE(); - case 193: - if (lookahead == 'l') ADVANCE(363); - if (lookahead == 's') ADVANCE(364); - END_STATE(); - case 194: - if (lookahead == 't') ADVANCE(365); - END_STATE(); - case 195: - if (lookahead == 'a') ADVANCE(366); - END_STATE(); - case 196: - if (lookahead == 't') ADVANCE(367); - END_STATE(); - case 197: - ACCEPT_TOKEN(anon_sym_for); - END_STATE(); - case 198: - if (lookahead == 'g') ADVANCE(368); - END_STATE(); - case 199: - if (lookahead == 'e') ADVANCE(369); - END_STATE(); - case 200: - if (lookahead == 'm') ADVANCE(370); - if (lookahead == 'n') ADVANCE(371); - END_STATE(); - case 201: - if (lookahead == 'c') ADVANCE(372); - END_STATE(); - case 202: - if (lookahead == 'r') ADVANCE(373); - END_STATE(); - case 203: - ACCEPT_TOKEN(anon_sym_get); - END_STATE(); - case 204: - if (lookahead == 'b') ADVANCE(374); - END_STATE(); - case 205: - if (lookahead == 'o') ADVANCE(375); - END_STATE(); - case 206: - if (lookahead == 'u') ADVANCE(376); - END_STATE(); - case 207: - if (lookahead == 'd') ADVANCE(377); - END_STATE(); - case 208: - if (lookahead == 'h') ADVANCE(378); - END_STATE(); - case 209: - ACCEPT_TOKEN(anon_sym_i16); - END_STATE(); - case 210: - ACCEPT_TOKEN(anon_sym_i32); - END_STATE(); - case 211: - ACCEPT_TOKEN(anon_sym_i64); - END_STATE(); - case 212: - if (lookahead == 'l') ADVANCE(379); - if (lookahead == 'o') ADVANCE(380); - END_STATE(); - case 213: - if (lookahead == 'i') ADVANCE(381); - END_STATE(); - case 214: - if (lookahead == 'u') ADVANCE(382); - END_STATE(); - case 215: - if (lookahead == 't') ADVANCE(383); - END_STATE(); - case 216: - if (lookahead == 'e') ADVANCE(384); - END_STATE(); - case 217: - if (lookahead == 'a') ADVANCE(385); - END_STATE(); - case 218: - if (lookahead == 'o') ADVANCE(386); - END_STATE(); - case 219: - ACCEPT_TOKEN(anon_sym_let); - END_STATE(); - case 220: - if (lookahead == 'e') ADVANCE(387); - END_STATE(); - case 221: - if (lookahead == 'a') ADVANCE(388); - END_STATE(); - case 222: - if (lookahead == 'p') ADVANCE(389); - END_STATE(); - case 223: - if (lookahead == 'p') ADVANCE(390); - END_STATE(); - case 224: - if (lookahead == 'r') ADVANCE(391); - END_STATE(); - case 225: - if (lookahead == '2') ADVANCE(392); - if (lookahead == '3') ADVANCE(393); - if (lookahead == '4') ADVANCE(394); - if (lookahead == 'c') ADVANCE(395); - END_STATE(); - case 226: - if (lookahead == 'i') ADVANCE(396); - END_STATE(); - case 227: - if (lookahead == 'a') ADVANCE(397); - END_STATE(); - case 228: - ACCEPT_TOKEN(anon_sym_mod); - if (lookahead == 'u') ADVANCE(398); - END_STATE(); - case 229: - if (lookahead == 'e') ADVANCE(399); - END_STATE(); - case 230: - ACCEPT_TOKEN(anon_sym_mut); - if (lookahead == 'a') ADVANCE(400); - END_STATE(); - case 231: - if (lookahead == 'e') ADVANCE(401); - END_STATE(); - case 232: - ACCEPT_TOKEN(anon_sym_new); - END_STATE(); - case 233: - ACCEPT_TOKEN(anon_sym_nil); - END_STATE(); - case 234: - if (lookahead == 'x') ADVANCE(402); - END_STATE(); - case 235: - if (lookahead == 'n') ADVANCE(403); - END_STATE(); - case 236: - if (lookahead == 'e') ADVANCE(404); - END_STATE(); - case 237: - if (lookahead == 'l') ADVANCE(405); - END_STATE(); - case 238: - if (lookahead == '_') ADVANCE(406); - END_STATE(); - case 239: - if (lookahead == 'r') ADVANCE(407); - END_STATE(); - case 240: - if (lookahead == 'r') ADVANCE(408); - END_STATE(); - case 241: - if (lookahead == 'k') ADVANCE(409); - END_STATE(); - case 242: - if (lookahead == 't') ADVANCE(410); - END_STATE(); - case 243: - if (lookahead == 's') ADVANCE(411); - END_STATE(); - case 244: - if (lookahead == 'c') ADVANCE(412); - END_STATE(); - case 245: - if (lookahead == 's') ADVANCE(413); - END_STATE(); - case 246: - if (lookahead == 'e') ADVANCE(414); - END_STATE(); - case 247: - if (lookahead == 'i') ADVANCE(415); - END_STATE(); - case 248: - if (lookahead == 'c') ADVANCE(416); - if (lookahead == 'm') ADVANCE(417); - END_STATE(); - case 249: - if (lookahead == 'v') ADVANCE(418); - END_STATE(); - case 250: - if (lookahead == 't') ADVANCE(419); - END_STATE(); - case 251: - ACCEPT_TOKEN(anon_sym_ptr); - END_STATE(); - case 252: - ACCEPT_TOKEN(anon_sym_pub); - if (lookahead == 'l') ADVANCE(420); - END_STATE(); - case 253: - if (lookahead == 't') ADVANCE(421); - END_STATE(); - case 254: - if (lookahead == 'f') ADVANCE(422); - if (lookahead == 's') ADVANCE(423); - if (lookahead == 'u') ADVANCE(424); - END_STATE(); - case 255: - if (lookahead == 'd') ADVANCE(425); - END_STATE(); - case 256: - ACCEPT_TOKEN(anon_sym_ref); - END_STATE(); - case 257: - if (lookahead == 'a') ADVANCE(426); - if (lookahead == 'i') ADVANCE(427); - END_STATE(); - case 258: - if (lookahead == 'n') ADVANCE(428); - END_STATE(); - case 259: - if (lookahead == 'u') ADVANCE(429); - END_STATE(); - case 260: - if (lookahead == 'o') ADVANCE(430); - if (lookahead == 't') ADVANCE(431); - END_STATE(); - case 261: - if (lookahead == 'u') ADVANCE(432); - END_STATE(); - case 262: - if (lookahead == '2') ADVANCE(433); - END_STATE(); - case 263: - if (lookahead == 'a') ADVANCE(434); - END_STATE(); - case 264: - if (lookahead == 'p') ADVANCE(435); - END_STATE(); - case 265: - if (lookahead == 'f') ADVANCE(436); - END_STATE(); - case 266: - ACCEPT_TOKEN(anon_sym_set); - END_STATE(); - case 267: - if (lookahead == 'r') ADVANCE(437); - END_STATE(); - case 268: - if (lookahead == 'n') ADVANCE(438); - END_STATE(); - case 269: - if (lookahead == 'e') ADVANCE(439); - END_STATE(); - case 270: - if (lookahead == 'o') ADVANCE(440); - END_STATE(); - case 271: - if (lookahead == 'r') ADVANCE(441); - END_STATE(); - case 272: - if (lookahead == 't') ADVANCE(442); - END_STATE(); - case 273: - ACCEPT_TOKEN(anon_sym_std); - END_STATE(); - case 274: - if (lookahead == 'r') ADVANCE(443); - END_STATE(); - case 275: - if (lookahead == 'u') ADVANCE(444); - END_STATE(); - case 276: - if (lookahead == 'r') ADVANCE(445); - END_STATE(); - case 277: - if (lookahead == 'e') ADVANCE(446); - END_STATE(); - case 278: - if (lookahead == 't') ADVANCE(447); - END_STATE(); - case 279: - if (lookahead == 'g') ADVANCE(448); - END_STATE(); - case 280: - if (lookahead == 'p') ADVANCE(449); - END_STATE(); - case 281: - if (lookahead == 't') ADVANCE(450); - END_STATE(); - case 282: - if (lookahead == 's') ADVANCE(451); - END_STATE(); - case 283: - if (lookahead == 'e') ADVANCE(452); - if (lookahead == 'o') ADVANCE(453); - END_STATE(); - case 284: - if (lookahead == 'i') ADVANCE(454); - END_STATE(); - case 285: - if (lookahead == 'e') ADVANCE(455); - END_STATE(); - case 286: - ACCEPT_TOKEN(anon_sym_try); - END_STATE(); - case 287: - if (lookahead == 'e') ADVANCE(456); - END_STATE(); - case 288: - ACCEPT_TOKEN(anon_sym_u16); - END_STATE(); - case 289: - ACCEPT_TOKEN(anon_sym_u32); - END_STATE(); - case 290: - ACCEPT_TOKEN(anon_sym_u64); - END_STATE(); - case 291: - if (lookahead == 'f') ADVANCE(457); - if (lookahead == 'o') ADVANCE(458); - END_STATE(); - case 292: - if (lookahead == 'e') ADVANCE(459); - END_STATE(); - case 293: - if (lookahead == 'r') ADVANCE(460); - END_STATE(); - case 294: - if (lookahead == 'a') ADVANCE(461); - if (lookahead == 'i') ADVANCE(462); - END_STATE(); - case 295: - ACCEPT_TOKEN(anon_sym_use); - END_STATE(); - case 296: - if (lookahead == 'n') ADVANCE(463); - END_STATE(); - case 297: - ACCEPT_TOKEN(anon_sym_var); - if (lookahead == 'y') ADVANCE(464); - END_STATE(); - case 298: - if (lookahead == '2') ADVANCE(465); - if (lookahead == '3') ADVANCE(466); - if (lookahead == '4') ADVANCE(467); - END_STATE(); - case 299: - if (lookahead == 't') ADVANCE(468); - END_STATE(); - case 300: - if (lookahead == 't') ADVANCE(469); - END_STATE(); - case 301: - if (lookahead == 'a') ADVANCE(470); - END_STATE(); - case 302: - if (lookahead == 'l') ADVANCE(471); - END_STATE(); - case 303: - if (lookahead == 'r') ADVANCE(472); - END_STATE(); - case 304: - if (lookahead == 'l') ADVANCE(473); - END_STATE(); - case 305: - if (lookahead == 'h') ADVANCE(474); - END_STATE(); - case 306: - if (lookahead == 'k') ADVANCE(475); - END_STATE(); - case 307: - if (lookahead == 't') ADVANCE(476); - END_STATE(); - case 308: - if (lookahead == 'l') ADVANCE(477); - END_STATE(); - case 309: - if (lookahead == 'i') ADVANCE(478); - if (lookahead == 'u') ADVANCE(479); - END_STATE(); - case 310: - if (lookahead == 'i') ADVANCE(480); - END_STATE(); - case 311: - if (lookahead == 'e') ADVANCE(481); - END_STATE(); - case 312: - if (lookahead == 's') ADVANCE(482); - END_STATE(); - case 313: - ACCEPT_TOKEN(anon_sym_NULL); - END_STATE(); - case 314: - ACCEPT_TOKEN(anon_sym_Self); - END_STATE(); - case 315: - if (lookahead == 'r') ADVANCE(483); - END_STATE(); - case 316: - if (lookahead == 'v') ADVANCE(484); - END_STATE(); - case 317: - if (lookahead == 's') ADVANCE(485); - END_STATE(); - case 318: - if (lookahead == 'n') ADVANCE(486); - END_STATE(); - case 319: - if (lookahead == 'y') ADVANCE(487); - END_STATE(); - case 320: - if (lookahead == 'f') ADVANCE(488); - END_STATE(); - case 321: - if (lookahead == 'c') ADVANCE(489); - END_STATE(); - case 322: - if (lookahead == 'i') ADVANCE(490); - END_STATE(); - case 323: - if (lookahead == 'i') ADVANCE(491); - END_STATE(); - case 324: - ACCEPT_TOKEN(anon_sym_auto); - END_STATE(); - case 325: - if (lookahead == 't') ADVANCE(492); - END_STATE(); - case 326: - if (lookahead == 'm') ADVANCE(493); - END_STATE(); - case 327: - ACCEPT_TOKEN(anon_sym_bf16); - END_STATE(); - case 328: - if (lookahead == '8') ADVANCE(494); - END_STATE(); - case 329: - if (lookahead == 'i') ADVANCE(495); - END_STATE(); - case 330: - if (lookahead == 'a') ADVANCE(496); - END_STATE(); - case 331: - ACCEPT_TOKEN(anon_sym_bool); - END_STATE(); - case 332: - if (lookahead == 'k') ADVANCE(497); - END_STATE(); - case 333: - if (lookahead == 't') ADVANCE(498); - END_STATE(); - case 334: - ACCEPT_TOKEN(anon_sym_case); - END_STATE(); - case 335: - ACCEPT_TOKEN(anon_sym_cast); - END_STATE(); - case 336: - if (lookahead == 'h') ADVANCE(499); - END_STATE(); - case 337: - if (lookahead == 'e') ADVANCE(500); - if (lookahead == 'r') ADVANCE(501); - END_STATE(); - case 338: - if (lookahead == 's') ADVANCE(502); - END_STATE(); - case 339: - if (lookahead == 'w') ADVANCE(503); - END_STATE(); - case 340: - if (lookahead == 'e') ADVANCE(504); - END_STATE(); - case 341: - if (lookahead == 'i') ADVANCE(505); - END_STATE(); - case 342: - if (lookahead == 'r') ADVANCE(506); - END_STATE(); - case 343: - if (lookahead == 'm') ADVANCE(507); - END_STATE(); - case 344: - if (lookahead == 'o') ADVANCE(508); - END_STATE(); - case 345: - if (lookahead == 'i') ADVANCE(509); - if (lookahead == 'u') ADVANCE(510); - END_STATE(); - case 346: - if (lookahead == 'e') ADVANCE(511); - END_STATE(); - case 347: - if (lookahead == 't') ADVANCE(512); - END_STATE(); - case 348: - if (lookahead == 'i') ADVANCE(513); - END_STATE(); - case 349: - if (lookahead == 'e') ADVANCE(514); - END_STATE(); - case 350: - if (lookahead == 'g') ADVANCE(515); - END_STATE(); - case 351: - if (lookahead == 't') ADVANCE(516); - END_STATE(); - case 352: - if (lookahead == 'u') ADVANCE(517); - END_STATE(); - case 353: - if (lookahead == 't') ADVANCE(518); - END_STATE(); - case 354: - if (lookahead == 't') ADVANCE(519); - END_STATE(); - case 355: - if (lookahead == 'a') ADVANCE(520); - END_STATE(); - case 356: - if (lookahead == 'm') ADVANCE(521); - END_STATE(); - case 357: - ACCEPT_TOKEN(anon_sym_else); - END_STATE(); - case 358: - if (lookahead == 'l') ADVANCE(522); - END_STATE(); - case 359: - ACCEPT_TOKEN(anon_sym_enum); - END_STATE(); - case 360: - if (lookahead == 'i') ADVANCE(523); - END_STATE(); - case 361: - if (lookahead == 'r') ADVANCE(524); - END_STATE(); - case 362: - if (lookahead == 'n') ADVANCE(525); - if (lookahead == 'r') ADVANCE(526); - END_STATE(); - case 363: - if (lookahead == 't') ADVANCE(527); - END_STATE(); - case 364: - if (lookahead == 'e') ADVANCE(528); - END_STATE(); - case 365: - if (lookahead == 'e') ADVANCE(529); - END_STATE(); - case 366: - if (lookahead == 'l') ADVANCE(530); - END_STATE(); - case 367: - ACCEPT_TOKEN(anon_sym_flat); - END_STATE(); - case 368: - if (lookahead == '_') ADVANCE(531); - if (lookahead == 'm') ADVANCE(532); - END_STATE(); - case 369: - if (lookahead == 'n') ADVANCE(533); - END_STATE(); - case 370: - ACCEPT_TOKEN(anon_sym_from); - END_STATE(); - case 371: - if (lookahead == 't') ADVANCE(534); - END_STATE(); - case 372: - if (lookahead == 't') ADVANCE(535); - END_STATE(); - case 373: - if (lookahead == 'o') ADVANCE(536); - END_STATE(); - case 374: - if (lookahead == 'a') ADVANCE(537); - END_STATE(); - case 375: - ACCEPT_TOKEN(anon_sym_goto); - END_STATE(); - case 376: - if (lookahead == 'p') ADVANCE(538); - END_STATE(); - case 377: - if (lookahead == 'l') ADVANCE(539); - END_STATE(); - case 378: - if (lookahead == 'p') ADVANCE(540); - END_STATE(); - case 379: - ACCEPT_TOKEN(anon_sym_impl); - if (lookahead == 'e') ADVANCE(541); - END_STATE(); - case 380: - if (lookahead == 'r') ADVANCE(542); - END_STATE(); - case 381: - if (lookahead == 'n') ADVANCE(543); - END_STATE(); - case 382: - if (lookahead == 't') ADVANCE(544); - END_STATE(); - case 383: - if (lookahead == 'a') ADVANCE(545); - END_STATE(); - case 384: - if (lookahead == 'r') ADVANCE(546); - END_STATE(); - case 385: - if (lookahead == 'r') ADVANCE(547); - END_STATE(); - case 386: - if (lookahead == 'u') ADVANCE(548); - END_STATE(); - case 387: - if (lookahead == 'a') ADVANCE(549); - END_STATE(); - case 388: - if (lookahead == 'l') ADVANCE(550); - if (lookahead == 't') ADVANCE(551); - END_STATE(); - case 389: - ACCEPT_TOKEN(anon_sym_loop); - END_STATE(); - case 390: - ACCEPT_TOKEN(anon_sym_lowp); - END_STATE(); - case 391: - if (lookahead == 'o') ADVANCE(552); - END_STATE(); - case 392: - if (lookahead == 'x') ADVANCE(553); - END_STATE(); - case 393: - if (lookahead == 'x') ADVANCE(554); - END_STATE(); - case 394: - if (lookahead == 'x') ADVANCE(555); - END_STATE(); - case 395: - if (lookahead == 'h') ADVANCE(556); - END_STATE(); - case 396: - if (lookahead == 'u') ADVANCE(557); - END_STATE(); - case 397: - ACCEPT_TOKEN(anon_sym_meta); - END_STATE(); - case 398: - if (lookahead == 'l') ADVANCE(558); - END_STATE(); - case 399: - ACCEPT_TOKEN(anon_sym_move); - END_STATE(); - case 400: - if (lookahead == 'b') ADVANCE(559); - END_STATE(); - case 401: - if (lookahead == 's') ADVANCE(560); - END_STATE(); - case 402: - if (lookahead == 'c') ADVANCE(561); - END_STATE(); - case 403: - if (lookahead == 'l') ADVANCE(562); - if (lookahead == 't') ADVANCE(563); - END_STATE(); - case 404: - if (lookahead == 'r') ADVANCE(564); - END_STATE(); - case 405: - ACCEPT_TOKEN(anon_sym_null); - if (lookahead == 'p') ADVANCE(565); - END_STATE(); - case 406: - if (lookahead == 'w') ADVANCE(566); - END_STATE(); - case 407: - if (lookahead == 'a') ADVANCE(567); - END_STATE(); - case 408: - if (lookahead == 'r') ADVANCE(568); - END_STATE(); - case 409: - if (lookahead == 'a') ADVANCE(569); - if (lookahead == 'o') ADVANCE(570); - END_STATE(); - case 410: - if (lookahead == 'i') ADVANCE(571); - END_STATE(); - case 411: - ACCEPT_TOKEN(anon_sym_pass); - END_STATE(); - case 412: - if (lookahead == 'h') ADVANCE(572); - END_STATE(); - case 413: - if (lookahead == 'p') ADVANCE(573); - END_STATE(); - case 414: - if (lookahead == 'l') ADVANCE(574); - END_STATE(); - case 415: - if (lookahead == 't') ADVANCE(575); - END_STATE(); - case 416: - if (lookahead == 'i') ADVANCE(576); - END_STATE(); - case 417: - if (lookahead == 'e') ADVANCE(577); - END_STATE(); - case 418: - ACCEPT_TOKEN(anon_sym_priv); - if (lookahead == 'a') ADVANCE(578); - END_STATE(); - case 419: - if (lookahead == 'e') ADVANCE(579); - END_STATE(); - case 420: - if (lookahead == 'i') ADVANCE(580); - END_STATE(); - case 421: - ACCEPT_TOKEN(anon_sym_quat); - END_STATE(); - case 422: - if (lookahead == 'l') ADVANCE(581); - END_STATE(); - case 423: - if (lookahead == 'i') ADVANCE(582); - END_STATE(); - case 424: - if (lookahead == 'i') ADVANCE(583); - END_STATE(); - case 425: - ACCEPT_TOKEN(anon_sym_read); - if (lookahead == '_') ADVANCE(584); - if (lookahead == 'o') ADVANCE(585); - END_STATE(); - case 426: - if (lookahead == 'r') ADVANCE(586); - END_STATE(); - case 427: - if (lookahead == 's') ADVANCE(587); - END_STATE(); - case 428: - if (lookahead == 't') ADVANCE(588); - END_STATE(); - case 429: - if (lookahead == 'i') ADVANCE(589); - END_STATE(); - case 430: - if (lookahead == 'u') ADVANCE(590); - END_STATE(); - case 431: - if (lookahead == 'r') ADVANCE(591); - END_STATE(); - case 432: - if (lookahead == 'r') ADVANCE(592); - END_STATE(); - case 433: - if (lookahead == 'f') ADVANCE(593); - if (lookahead == 's') ADVANCE(594); - if (lookahead == 'u') ADVANCE(595); - END_STATE(); - case 434: - if (lookahead == '1') ADVANCE(596); - if (lookahead == '3') ADVANCE(597); - if (lookahead == '8') ADVANCE(598); - END_STATE(); - case 435: - if (lookahead == 'l') ADVANCE(599); - END_STATE(); - case 436: - ACCEPT_TOKEN(anon_sym_self); - END_STATE(); - case 437: - if (lookahead == 'e') ADVANCE(600); - END_STATE(); - case 438: - if (lookahead == 'e') ADVANCE(601); - END_STATE(); - case 439: - ACCEPT_TOKEN(anon_sym_size); - if (lookahead == 'o') ADVANCE(602); - END_STATE(); - case 440: - if (lookahead == 't') ADVANCE(603); - END_STATE(); - case 441: - if (lookahead == 'm') ADVANCE(604); - END_STATE(); - case 442: - if (lookahead == 'i') ADVANCE(605); - END_STATE(); - case 443: - if (lookahead == 'a') ADVANCE(606); - END_STATE(); - case 444: - if (lookahead == 'c') ADVANCE(607); - END_STATE(); - case 445: - if (lookahead == 'o') ADVANCE(608); - END_STATE(); - case 446: - if (lookahead == 'r') ADVANCE(609); - END_STATE(); - case 447: - if (lookahead == 'c') ADVANCE(610); - END_STATE(); - case 448: - if (lookahead == 'e') ADVANCE(611); - END_STATE(); - case 449: - if (lookahead == 'l') ADVANCE(612); - END_STATE(); - case 450: - if (lookahead == 'u') ADVANCE(613); - END_STATE(); - case 451: - ACCEPT_TOKEN(anon_sym_this); - END_STATE(); - case 452: - if (lookahead == 'a') ADVANCE(614); - END_STATE(); - case 453: - if (lookahead == 'w') ADVANCE(615); - END_STATE(); - case 454: - if (lookahead == 't') ADVANCE(616); - END_STATE(); - case 455: - ACCEPT_TOKEN(anon_sym_true); - END_STATE(); - case 456: - ACCEPT_TOKEN(anon_sym_type); - if (lookahead == 'd') ADVANCE(617); - if (lookahead == 'i') ADVANCE(618); - if (lookahead == 'n') ADVANCE(619); - if (lookahead == 'o') ADVANCE(620); - END_STATE(); - case 457: - if (lookahead == 'o') ADVANCE(621); - END_STATE(); - case 458: - if (lookahead == 'n') ADVANCE(622); - END_STATE(); - case 459: - if (lookahead == 's') ADVANCE(623); - END_STATE(); - case 460: - if (lookahead == 'm') ADVANCE(624); - END_STATE(); - case 461: - if (lookahead == 'f') ADVANCE(625); - END_STATE(); - case 462: - if (lookahead == 'z') ADVANCE(626); - END_STATE(); - case 463: - if (lookahead == 'g') ADVANCE(627); - END_STATE(); - case 464: - if (lookahead == 'i') ADVANCE(628); - END_STATE(); - case 465: - ACCEPT_TOKEN(anon_sym_vec2); - END_STATE(); - case 466: - ACCEPT_TOKEN(anon_sym_vec3); - END_STATE(); - case 467: - ACCEPT_TOKEN(anon_sym_vec4); - END_STATE(); - case 468: - if (lookahead == 'e') ADVANCE(629); - END_STATE(); - case 469: - if (lookahead == 'u') ADVANCE(630); - END_STATE(); - case 470: - if (lookahead == 't') ADVANCE(631); - END_STATE(); - case 471: - ACCEPT_TOKEN(anon_sym_wgsl); - END_STATE(); - case 472: - if (lookahead == 'e') ADVANCE(632); - END_STATE(); - case 473: - if (lookahead == 'e') ADVANCE(633); - END_STATE(); - case 474: - ACCEPT_TOKEN(anon_sym_with); - END_STATE(); - case 475: - if (lookahead == 'g') ADVANCE(634); - END_STATE(); - case 476: - if (lookahead == 'e') ADVANCE(635); - END_STATE(); - case 477: - if (lookahead == 'd') ADVANCE(636); - END_STATE(); - case 478: - if (lookahead == 'l') ADVANCE(637); - END_STATE(); - case 479: - if (lookahead == 't') ADVANCE(638); - END_STATE(); - case 480: - if (lookahead == 'n') ADVANCE(639); - END_STATE(); - case 481: - if (lookahead == 't') ADVANCE(640); - END_STATE(); - case 482: - if (lookahead == 'h') ADVANCE(641); - END_STATE(); - case 483: - if (lookahead == 'a') ADVANCE(642); - END_STATE(); - case 484: - if (lookahead == 'e') ADVANCE(643); - END_STATE(); - case 485: - ACCEPT_TOKEN(anon_sym_alias); - END_STATE(); - case 486: - ACCEPT_TOKEN(anon_sym_align); - if (lookahead == 'a') ADVANCE(644); - if (lookahead == 'o') ADVANCE(645); - END_STATE(); - case 487: - ACCEPT_TOKEN(anon_sym_array); - END_STATE(); - case 488: - if (lookahead == 'r') ADVANCE(646); - END_STATE(); - case 489: - ACCEPT_TOKEN(anon_sym_async); - END_STATE(); - case 490: - if (lookahead == 'c') ADVANCE(647); - END_STATE(); - case 491: - if (lookahead == 'b') ADVANCE(648); - END_STATE(); - case 492: - ACCEPT_TOKEN(anon_sym_await); - END_STATE(); - case 493: - if (lookahead == 'e') ADVANCE(649); - END_STATE(); - case 494: - if (lookahead == 'u') ADVANCE(650); - END_STATE(); - case 495: - if (lookahead == 'n') ADVANCE(651); - END_STATE(); - case 496: - if (lookahead == 's') ADVANCE(652); - END_STATE(); - case 497: - ACCEPT_TOKEN(anon_sym_break); - END_STATE(); - case 498: - if (lookahead == 'i') ADVANCE(653); - END_STATE(); - case 499: - ACCEPT_TOKEN(anon_sym_catch); - END_STATE(); - case 500: - if (lookahead == 'r') ADVANCE(654); - END_STATE(); - case 501: - if (lookahead == 'o') ADVANCE(655); - END_STATE(); - case 502: - ACCEPT_TOKEN(anon_sym_class); - END_STATE(); - case 503: - if (lookahead == 'a') ADVANCE(656); - END_STATE(); - case 504: - if (lookahead == 't') ADVANCE(657); - END_STATE(); - case 505: - if (lookahead == 'e') ADVANCE(658); - END_STATE(); - case 506: - if (lookahead == 'e') ADVANCE(659); - END_STATE(); - case 507: - if (lookahead == 'n') ADVANCE(660); - END_STATE(); - case 508: - if (lookahead == 'n') ADVANCE(661); - END_STATE(); - case 509: - if (lookahead == 'l') ADVANCE(662); - END_STATE(); - case 510: - if (lookahead == 't') ADVANCE(663); - END_STATE(); - case 511: - if (lookahead == 'p') ADVANCE(664); - END_STATE(); - case 512: - ACCEPT_TOKEN(anon_sym_const); - if (lookahead == '_') ADVANCE(665); - if (lookahead == 'e') ADVANCE(666); - if (lookahead == 'i') ADVANCE(667); - END_STATE(); - case 513: - if (lookahead == 'n') ADVANCE(668); - END_STATE(); - case 514: - ACCEPT_TOKEN(anon_sym_crate); - END_STATE(); - case 515: - if (lookahead == 'g') ADVANCE(669); - END_STATE(); - case 516: - if (lookahead == 'y') ADVANCE(670); - END_STATE(); - case 517: - if (lookahead == 'l') ADVANCE(671); - END_STATE(); - case 518: - if (lookahead == 'e') ADVANCE(672); - END_STATE(); - case 519: - if (lookahead == 'e') ADVANCE(673); - END_STATE(); - case 520: - if (lookahead == 'r') ADVANCE(674); - END_STATE(); - case 521: - if (lookahead == 'i') ADVANCE(675); - END_STATE(); - case 522: - if (lookahead == 'e') ADVANCE(676); - END_STATE(); - case 523: - if (lookahead == 'c') ADVANCE(677); - END_STATE(); - case 524: - if (lookahead == 't') ADVANCE(678); - END_STATE(); - case 525: - if (lookahead == 'd') ADVANCE(679); - END_STATE(); - case 526: - if (lookahead == 'n') ADVANCE(680); - END_STATE(); - case 527: - if (lookahead == 'h') ADVANCE(681); - END_STATE(); - case 528: - ACCEPT_TOKEN(anon_sym_false); - END_STATE(); - case 529: - if (lookahead == 'r') ADVANCE(682); - END_STATE(); - case 530: - ACCEPT_TOKEN(anon_sym_final); - if (lookahead == 'l') ADVANCE(683); - END_STATE(); - case 531: - if (lookahead == 'd') ADVANCE(684); - END_STATE(); - case 532: - if (lookahead == 'e') ADVANCE(685); - END_STATE(); - case 533: - if (lookahead == 'd') ADVANCE(686); - END_STATE(); - case 534: - if (lookahead == '_') ADVANCE(687); - END_STATE(); - case 535: - if (lookahead == 'i') ADVANCE(688); - END_STATE(); - case 536: - if (lookahead == 'u') ADVANCE(689); - END_STATE(); - case 537: - if (lookahead == 'l') ADVANCE(690); - END_STATE(); - case 538: - ACCEPT_TOKEN(anon_sym_group); - if (lookahead == 's') ADVANCE(691); - END_STATE(); - case 539: - if (lookahead == 'e') ADVANCE(692); - END_STATE(); - case 540: - ACCEPT_TOKEN(anon_sym_highp); - END_STATE(); - case 541: - if (lookahead == 'm') ADVANCE(693); - END_STATE(); - case 542: - if (lookahead == 't') ADVANCE(694); - END_STATE(); - case 543: - if (lookahead == 'e') ADVANCE(695); - END_STATE(); - case 544: - ACCEPT_TOKEN(anon_sym_inout); - END_STATE(); - case 545: - if (lookahead == 'n') ADVANCE(696); - END_STATE(); - case 546: - if (lookahead == 'f') ADVANCE(697); - if (lookahead == 'p') ADVANCE(698); - END_STATE(); - case 547: - if (lookahead == 'i') ADVANCE(699); - END_STATE(); - case 548: - if (lookahead == 't') ADVANCE(700); - END_STATE(); - case 549: - if (lookahead == 'r') ADVANCE(701); - END_STATE(); - case 550: - if (lookahead == '_') ADVANCE(702); - END_STATE(); - case 551: - if (lookahead == 'i') ADVANCE(703); - END_STATE(); - case 552: - ACCEPT_TOKEN(anon_sym_macro); - if (lookahead == '_') ADVANCE(704); - END_STATE(); - case 553: - if (lookahead == '2') ADVANCE(705); - if (lookahead == '3') ADVANCE(706); - if (lookahead == '4') ADVANCE(707); - END_STATE(); - case 554: - if (lookahead == '2') ADVANCE(708); - if (lookahead == '3') ADVANCE(709); - if (lookahead == '4') ADVANCE(710); - END_STATE(); - case 555: - if (lookahead == '2') ADVANCE(711); - if (lookahead == '3') ADVANCE(712); - if (lookahead == '4') ADVANCE(713); - END_STATE(); - case 556: - ACCEPT_TOKEN(anon_sym_match); - END_STATE(); - case 557: - if (lookahead == 'm') ADVANCE(714); - END_STATE(); - case 558: - if (lookahead == 'e') ADVANCE(715); - END_STATE(); - case 559: - if (lookahead == 'l') ADVANCE(716); - END_STATE(); - case 560: - if (lookahead == 'p') ADVANCE(717); - END_STATE(); - case 561: - if (lookahead == 'e') ADVANCE(718); - END_STATE(); - case 562: - if (lookahead == 'i') ADVANCE(719); - END_STATE(); - case 563: - if (lookahead == 'e') ADVANCE(720); - END_STATE(); - case 564: - if (lookahead == 's') ADVANCE(721); - END_STATE(); - case 565: - if (lookahead == 't') ADVANCE(722); - END_STATE(); - case 566: - if (lookahead == 'o') ADVANCE(723); - END_STATE(); - case 567: - if (lookahead == 't') ADVANCE(724); - END_STATE(); - case 568: - if (lookahead == 'i') ADVANCE(725); - END_STATE(); - case 569: - if (lookahead == 'g') ADVANCE(726); - END_STATE(); - case 570: - if (lookahead == 'f') ADVANCE(727); - END_STATE(); - case 571: - if (lookahead == 't') ADVANCE(728); - END_STATE(); - case 572: - ACCEPT_TOKEN(anon_sym_patch); - END_STATE(); - case 573: - if (lookahead == 'e') ADVANCE(729); - END_STATE(); - case 574: - if (lookahead == 'f') ADVANCE(730); - END_STATE(); - case 575: - if (lookahead == 'i') ADVANCE(731); - END_STATE(); - case 576: - if (lookahead == 's') ADVANCE(732); - END_STATE(); - case 577: - if (lookahead == 'r') ADVANCE(733); - END_STATE(); - case 578: - if (lookahead == 't') ADVANCE(734); - END_STATE(); - case 579: - if (lookahead == 'c') ADVANCE(735); - END_STATE(); - case 580: - if (lookahead == 'c') ADVANCE(736); - END_STATE(); - case 581: - if (lookahead == 'o') ADVANCE(737); - END_STATE(); - case 582: - if (lookahead == 'n') ADVANCE(738); - END_STATE(); - case 583: - if (lookahead == 'n') ADVANCE(739); - END_STATE(); - case 584: - if (lookahead == 'w') ADVANCE(740); - END_STATE(); - case 585: - if (lookahead == 'n') ADVANCE(741); - END_STATE(); - case 586: - if (lookahead == 'd') ADVANCE(742); - END_STATE(); - case 587: - if (lookahead == 't') ADVANCE(743); - END_STATE(); - case 588: - if (lookahead == 'e') ADVANCE(744); - END_STATE(); - case 589: - if (lookahead == 'r') ADVANCE(745); - END_STATE(); - case 590: - if (lookahead == 'r') ADVANCE(746); - END_STATE(); - case 591: - if (lookahead == 'i') ADVANCE(747); - END_STATE(); - case 592: - if (lookahead == 'n') ADVANCE(748); - END_STATE(); - case 593: - if (lookahead == 'l') ADVANCE(749); - END_STATE(); - case 594: - if (lookahead == 'i') ADVANCE(750); - END_STATE(); - case 595: - if (lookahead == 'i') ADVANCE(751); - END_STATE(); - case 596: - if (lookahead == '6') ADVANCE(752); - END_STATE(); - case 597: - if (lookahead == '2') ADVANCE(753); - END_STATE(); - case 598: - if (lookahead == 's') ADVANCE(754); - if (lookahead == 'u') ADVANCE(755); - END_STATE(); - case 599: - if (lookahead == 'e') ADVANCE(756); - END_STATE(); - case 600: - if (lookahead == 'd') ADVANCE(757); - END_STATE(); - case 601: - if (lookahead == 'd') ADVANCE(758); - END_STATE(); - case 602: - if (lookahead == 'f') ADVANCE(759); - END_STATE(); - case 603: - if (lookahead == 'h') ADVANCE(760); - END_STATE(); - case 604: - ACCEPT_TOKEN(anon_sym_snorm); - END_STATE(); - case 605: - if (lookahead == 'c') ADVANCE(761); - END_STATE(); - case 606: - if (lookahead == 'g') ADVANCE(762); - END_STATE(); - case 607: - if (lookahead == 't') ADVANCE(763); - END_STATE(); - case 608: - if (lookahead == 'u') ADVANCE(764); - END_STATE(); - case 609: - ACCEPT_TOKEN(anon_sym_super); - END_STATE(); - case 610: - if (lookahead == 'h') ADVANCE(765); - END_STATE(); - case 611: - if (lookahead == 't') ADVANCE(766); - END_STATE(); - case 612: - if (lookahead == 'a') ADVANCE(767); - END_STATE(); - case 613: - if (lookahead == 'r') ADVANCE(768); - END_STATE(); - case 614: - if (lookahead == 'd') ADVANCE(769); - END_STATE(); - case 615: - ACCEPT_TOKEN(anon_sym_throw); - END_STATE(); - case 616: - ACCEPT_TOKEN(anon_sym_trait); - END_STATE(); - case 617: - if (lookahead == 'e') ADVANCE(770); - END_STATE(); - case 618: - if (lookahead == 'd') ADVANCE(771); - END_STATE(); - case 619: - if (lookahead == 'a') ADVANCE(772); - END_STATE(); - case 620: - if (lookahead == 'f') ADVANCE(773); - END_STATE(); - case 621: - if (lookahead == 'r') ADVANCE(774); - END_STATE(); - case 622: - ACCEPT_TOKEN(anon_sym_union); - END_STATE(); - case 623: - if (lookahead == 's') ADVANCE(775); - END_STATE(); - case 624: - ACCEPT_TOKEN(anon_sym_unorm); - END_STATE(); - case 625: - if (lookahead == 'e') ADVANCE(776); - END_STATE(); - case 626: - if (lookahead == 'e') ADVANCE(777); - END_STATE(); - case 627: - ACCEPT_TOKEN(anon_sym_using); - END_STATE(); - case 628: - if (lookahead == 'n') ADVANCE(778); - END_STATE(); - case 629: - if (lookahead == 'x') ADVANCE(779); - END_STATE(); - case 630: - if (lookahead == 'a') ADVANCE(780); - END_STATE(); - case 631: - if (lookahead == 'i') ADVANCE(781); - END_STATE(); - case 632: - ACCEPT_TOKEN(anon_sym_where); - END_STATE(); - case 633: - ACCEPT_TOKEN(anon_sym_while); - END_STATE(); - case 634: - if (lookahead == 'r') ADVANCE(782); - END_STATE(); - case 635: - ACCEPT_TOKEN(anon_sym_write); - if (lookahead == 'o') ADVANCE(783); - END_STATE(); - case 636: - ACCEPT_TOKEN(anon_sym_yield); - END_STATE(); - case 637: - if (lookahead == 'e') ADVANCE(784); - END_STATE(); - case 638: - if (lookahead == 'e') ADVANCE(785); - END_STATE(); - case 639: - if (lookahead == 'S') ADVANCE(786); - END_STATE(); - case 640: - if (lookahead == 'r') ADVANCE(787); - END_STATE(); - case 641: - if (lookahead == 'a') ADVANCE(788); - END_STATE(); - case 642: - if (lookahead == 'c') ADVANCE(789); - END_STATE(); - case 643: - ACCEPT_TOKEN(anon_sym_active); - END_STATE(); - case 644: - if (lookahead == 's') ADVANCE(790); - END_STATE(); - case 645: - if (lookahead == 'f') ADVANCE(791); - END_STATE(); - case 646: - if (lookahead == 'a') ADVANCE(792); - END_STATE(); - case 647: - ACCEPT_TOKEN(anon_sym_atomic); - END_STATE(); - case 648: - if (lookahead == 'u') ADVANCE(793); - END_STATE(); - case 649: - ACCEPT_TOKEN(anon_sym_become); - END_STATE(); - case 650: - if (lookahead == 'n') ADVANCE(794); - END_STATE(); - case 651: - if (lookahead == 'g') ADVANCE(795); - END_STATE(); - case 652: - if (lookahead == 't') ADVANCE(796); - END_STATE(); - case 653: - if (lookahead == 'n') ADVANCE(797); - END_STATE(); - case 654: - ACCEPT_TOKEN(anon_sym_center); - END_STATE(); - case 655: - if (lookahead == 'i') ADVANCE(798); - END_STATE(); - case 656: - if (lookahead == 'i') ADVANCE(799); - END_STATE(); - case 657: - if (lookahead == 'u') ADVANCE(800); - END_STATE(); - case 658: - if (lookahead == 'l') ADVANCE(801); - END_STATE(); - case 659: - if (lookahead == 'n') ADVANCE(802); - END_STATE(); - case 660: - if (lookahead == '_') ADVANCE(803); - END_STATE(); - case 661: - ACCEPT_TOKEN(anon_sym_common); - END_STATE(); - case 662: - if (lookahead == 'e') ADVANCE(804); - END_STATE(); - case 663: - if (lookahead == 'e') ADVANCE(805); - END_STATE(); - case 664: - if (lookahead == 't') ADVANCE(806); - END_STATE(); - case 665: - if (lookahead == 'a') ADVANCE(807); - if (lookahead == 'c') ADVANCE(808); - END_STATE(); - case 666: - if (lookahead == 'v') ADVANCE(809); - if (lookahead == 'x') ADVANCE(810); - END_STATE(); - case 667: - if (lookahead == 'n') ADVANCE(811); - END_STATE(); - case 668: - if (lookahead == 'u') ADVANCE(812); - END_STATE(); - case 669: - if (lookahead == 'e') ADVANCE(813); - END_STATE(); - case 670: - if (lookahead == 'p') ADVANCE(814); - END_STATE(); - case 671: - if (lookahead == 't') ADVANCE(815); - END_STATE(); - case 672: - ACCEPT_TOKEN(anon_sym_delete); - END_STATE(); - case 673: - ACCEPT_TOKEN(anon_sym_demote); - if (lookahead == '_') ADVANCE(816); - END_STATE(); - case 674: - if (lookahead == 'd') ADVANCE(817); - END_STATE(); - case 675: - if (lookahead == 'c') ADVANCE(818); - END_STATE(); - case 676: - ACCEPT_TOKEN(anon_sym_enable); - END_STATE(); - case 677: - if (lookahead == 'i') ADVANCE(819); - END_STATE(); - case 678: - ACCEPT_TOKEN(anon_sym_export); - END_STATE(); - case 679: - if (lookahead == 's') ADVANCE(820); - END_STATE(); - case 680: - ACCEPT_TOKEN(anon_sym_extern); - if (lookahead == 'a') ADVANCE(821); - END_STATE(); - case 681: - if (lookahead == 'r') ADVANCE(822); - END_STATE(); - case 682: - ACCEPT_TOKEN(anon_sym_filter); - END_STATE(); - case 683: - if (lookahead == 'y') ADVANCE(823); - END_STATE(); - case 684: - if (lookahead == 'e') ADVANCE(824); - END_STATE(); - case 685: - if (lookahead == 'n') ADVANCE(825); - END_STATE(); - case 686: - ACCEPT_TOKEN(anon_sym_friend); - END_STATE(); - case 687: - if (lookahead == 'f') ADVANCE(826); - END_STATE(); - case 688: - if (lookahead == 'o') ADVANCE(827); - END_STATE(); - case 689: - if (lookahead == 'p') ADVANCE(828); - END_STATE(); - case 690: - if (lookahead == '_') ADVANCE(829); - END_STATE(); - case 691: - if (lookahead == 'h') ADVANCE(830); - END_STATE(); - case 692: - ACCEPT_TOKEN(anon_sym_handle); - END_STATE(); - case 693: - if (lookahead == 'e') ADVANCE(831); - END_STATE(); - case 694: - ACCEPT_TOKEN(anon_sym_import); - END_STATE(); - case 695: - ACCEPT_TOKEN(anon_sym_inline); - END_STATE(); - case 696: - if (lookahead == 'c') ADVANCE(832); - END_STATE(); - case 697: - if (lookahead == 'a') ADVANCE(833); - END_STATE(); - case 698: - if (lookahead == 'o') ADVANCE(834); - END_STATE(); - case 699: - if (lookahead == 'a') ADVANCE(835); - END_STATE(); - case 700: - ACCEPT_TOKEN(anon_sym_layout); - END_STATE(); - case 701: - ACCEPT_TOKEN(anon_sym_linear); - END_STATE(); - case 702: - if (lookahead == 'i') ADVANCE(836); - END_STATE(); - case 703: - if (lookahead == 'o') ADVANCE(837); - END_STATE(); - case 704: - if (lookahead == 'r') ADVANCE(838); - END_STATE(); - case 705: - ACCEPT_TOKEN(anon_sym_mat2x2); - END_STATE(); - case 706: - ACCEPT_TOKEN(anon_sym_mat2x3); - END_STATE(); - case 707: - ACCEPT_TOKEN(anon_sym_mat2x4); - END_STATE(); - case 708: - ACCEPT_TOKEN(anon_sym_mat3x2); - END_STATE(); - case 709: - ACCEPT_TOKEN(anon_sym_mat3x3); - END_STATE(); - case 710: - ACCEPT_TOKEN(anon_sym_mat3x4); - END_STATE(); - case 711: - ACCEPT_TOKEN(anon_sym_mat4x2); - END_STATE(); - case 712: - ACCEPT_TOKEN(anon_sym_mat4x3); - END_STATE(); - case 713: - ACCEPT_TOKEN(anon_sym_mat4x4); - END_STATE(); - case 714: - if (lookahead == 'p') ADVANCE(839); - END_STATE(); - case 715: - ACCEPT_TOKEN(anon_sym_module); - END_STATE(); - case 716: - if (lookahead == 'e') ADVANCE(840); - END_STATE(); - case 717: - if (lookahead == 'a') ADVANCE(841); - END_STATE(); - case 718: - if (lookahead == 'p') ADVANCE(842); - END_STATE(); - case 719: - if (lookahead == 'n') ADVANCE(843); - END_STATE(); - case 720: - if (lookahead == 'r') ADVANCE(844); - END_STATE(); - case 721: - if (lookahead == 'p') ADVANCE(845); - END_STATE(); - case 722: - if (lookahead == 'r') ADVANCE(846); - END_STATE(); - case 723: - if (lookahead == 'r') ADVANCE(847); - END_STATE(); - case 724: - if (lookahead == 'o') ADVANCE(848); - END_STATE(); - case 725: - if (lookahead == 'd') ADVANCE(849); - END_STATE(); - case 726: - if (lookahead == 'e') ADVANCE(850); - END_STATE(); - case 727: - if (lookahead == 'f') ADVANCE(851); - END_STATE(); - case 728: - if (lookahead == 'i') ADVANCE(852); - END_STATE(); - case 729: - if (lookahead == 'c') ADVANCE(853); - END_STATE(); - case 730: - if (lookahead == 'r') ADVANCE(854); - END_STATE(); - case 731: - if (lookahead == 'o') ADVANCE(855); - END_STATE(); - case 732: - if (lookahead == 'e') ADVANCE(856); - if (lookahead == 'i') ADVANCE(857); - END_STATE(); - case 733: - if (lookahead == 'g') ADVANCE(858); - END_STATE(); - case 734: - if (lookahead == 'e') ADVANCE(859); - END_STATE(); - case 735: - if (lookahead == 't') ADVANCE(860); - END_STATE(); - case 736: - ACCEPT_TOKEN(anon_sym_public); - END_STATE(); - case 737: - if (lookahead == 'a') ADVANCE(861); - END_STATE(); - case 738: - if (lookahead == 't') ADVANCE(862); - END_STATE(); - case 739: - if (lookahead == 't') ADVANCE(863); - END_STATE(); - case 740: - if (lookahead == 'r') ADVANCE(864); - END_STATE(); - case 741: - if (lookahead == 'l') ADVANCE(865); - END_STATE(); - case 742: - if (lookahead == 'l') ADVANCE(866); - END_STATE(); - case 743: - if (lookahead == 'e') ADVANCE(867); - END_STATE(); - case 744: - if (lookahead == 'r') ADVANCE(868); - END_STATE(); - case 745: - if (lookahead == 'e') ADVANCE(869); - END_STATE(); - case 746: - if (lookahead == 'c') ADVANCE(870); - END_STATE(); - case 747: - if (lookahead == 'c') ADVANCE(871); - END_STATE(); - case 748: - ACCEPT_TOKEN(anon_sym_return); - END_STATE(); - case 749: - if (lookahead == 'o') ADVANCE(872); - END_STATE(); - case 750: - if (lookahead == 'n') ADVANCE(873); - END_STATE(); - case 751: - if (lookahead == 'n') ADVANCE(874); - END_STATE(); - case 752: - if (lookahead == 'f') ADVANCE(875); - if (lookahead == 's') ADVANCE(876); - if (lookahead == 'u') ADVANCE(877); - END_STATE(); - case 753: - if (lookahead == 'f') ADVANCE(878); - if (lookahead == 's') ADVANCE(879); - if (lookahead == 'u') ADVANCE(880); - END_STATE(); - case 754: - if (lookahead == 'i') ADVANCE(881); - if (lookahead == 'n') ADVANCE(882); - END_STATE(); - case 755: - if (lookahead == 'i') ADVANCE(883); - if (lookahead == 'n') ADVANCE(884); - END_STATE(); - case 756: - ACCEPT_TOKEN(anon_sym_sample); - if (lookahead == '_') ADVANCE(885); - if (lookahead == 'r') ADVANCE(886); - END_STATE(); - case 757: - ACCEPT_TOKEN(anon_sym_shared); - END_STATE(); - case 758: - ACCEPT_TOKEN(anon_sym_signed); - END_STATE(); - case 759: - ACCEPT_TOKEN(anon_sym_sizeof); - END_STATE(); - case 760: - ACCEPT_TOKEN(anon_sym_smooth); - END_STATE(); - case 761: - ACCEPT_TOKEN(anon_sym_static); - if (lookahead == '_') ADVANCE(887); - END_STATE(); - case 762: - if (lookahead == 'e') ADVANCE(888); - END_STATE(); - case 763: - ACCEPT_TOKEN(anon_sym_struct); - END_STATE(); - case 764: - if (lookahead == 't') ADVANCE(889); - END_STATE(); - case 765: - ACCEPT_TOKEN(anon_sym_switch); - END_STATE(); - case 766: - ACCEPT_TOKEN(anon_sym_target); - END_STATE(); - case 767: - if (lookahead == 't') ADVANCE(890); - END_STATE(); - case 768: - if (lookahead == 'e') ADVANCE(891); - END_STATE(); - case 769: - if (lookahead == '_') ADVANCE(892); - END_STATE(); - case 770: - if (lookahead == 'f') ADVANCE(893); - END_STATE(); - case 771: - ACCEPT_TOKEN(anon_sym_typeid); - END_STATE(); - case 772: - if (lookahead == 'm') ADVANCE(894); - END_STATE(); - case 773: - ACCEPT_TOKEN(anon_sym_typeof); - END_STATE(); - case 774: - if (lookahead == 'm') ADVANCE(895); - END_STATE(); - case 775: - ACCEPT_TOKEN(anon_sym_unless); - END_STATE(); - case 776: - ACCEPT_TOKEN(anon_sym_unsafe); - END_STATE(); - case 777: - if (lookahead == 'd') ADVANCE(896); - END_STATE(); - case 778: - if (lookahead == 'g') ADVANCE(897); - END_STATE(); - case 779: - ACCEPT_TOKEN(anon_sym_vertex); - if (lookahead == '_') ADVANCE(898); - END_STATE(); - case 780: - if (lookahead == 'l') ADVANCE(899); - END_STATE(); - case 781: - if (lookahead == 'l') ADVANCE(900); - END_STATE(); - case 782: - if (lookahead == 'o') ADVANCE(901); - END_STATE(); - case 783: - if (lookahead == 'n') ADVANCE(902); - END_STATE(); - case 784: - if (lookahead == 'S') ADVANCE(903); - END_STATE(); - case 785: - if (lookahead == 'S') ADVANCE(904); - END_STATE(); - case 786: - if (lookahead == 'h') ADVANCE(905); - END_STATE(); - case 787: - if (lookahead == 'y') ADVANCE(906); - END_STATE(); - case 788: - if (lookahead == 'd') ADVANCE(907); - END_STATE(); - case 789: - if (lookahead == 't') ADVANCE(908); - END_STATE(); - case 790: - ACCEPT_TOKEN(anon_sym_alignas); - END_STATE(); - case 791: - ACCEPT_TOKEN(anon_sym_alignof); - END_STATE(); - case 792: - if (lookahead == 'g') ADVANCE(909); - END_STATE(); - case 793: - if (lookahead == 't') ADVANCE(910); - END_STATE(); - case 794: - if (lookahead == 'o') ADVANCE(911); - END_STATE(); - case 795: - ACCEPT_TOKEN(anon_sym_binding); - if (lookahead == '_') ADVANCE(912); - END_STATE(); - case 796: - ACCEPT_TOKEN(anon_sym_bitcast); - END_STATE(); - case 797: - ACCEPT_TOKEN(anon_sym_builtin); - END_STATE(); - case 798: - if (lookahead == 'd') ADVANCE(913); - END_STATE(); - case 799: - if (lookahead == 't') ADVANCE(914); - END_STATE(); - case 800: - if (lookahead == 'r') ADVANCE(915); - END_STATE(); - case 801: - if (lookahead == 'd') ADVANCE(916); - END_STATE(); - case 802: - if (lookahead == 't') ADVANCE(917); - END_STATE(); - case 803: - if (lookahead == 'm') ADVANCE(918); - END_STATE(); - case 804: - ACCEPT_TOKEN(anon_sym_compile); - if (lookahead == '_') ADVANCE(919); - END_STATE(); - case 805: - ACCEPT_TOKEN(anon_sym_compute); - END_STATE(); - case 806: - ACCEPT_TOKEN(anon_sym_concept); - END_STATE(); - case 807: - if (lookahead == 's') ADVANCE(920); - END_STATE(); - case 808: - if (lookahead == 'a') ADVANCE(921); - END_STATE(); - case 809: - if (lookahead == 'a') ADVANCE(922); - END_STATE(); - case 810: - if (lookahead == 'p') ADVANCE(923); - END_STATE(); - case 811: - if (lookahead == 'i') ADVANCE(924); - END_STATE(); - case 812: - if (lookahead == 'e') ADVANCE(925); - if (lookahead == 'i') ADVANCE(926); - END_STATE(); - case 813: - if (lookahead == 'r') ADVANCE(927); - END_STATE(); - case 814: - if (lookahead == 'e') ADVANCE(928); - END_STATE(); - case 815: - ACCEPT_TOKEN(anon_sym_default); - END_STATE(); - case 816: - if (lookahead == 't') ADVANCE(929); - END_STATE(); - case 817: - ACCEPT_TOKEN(anon_sym_discard); - END_STATE(); - case 818: - if (lookahead == '_') ADVANCE(930); - END_STATE(); - case 819: - if (lookahead == 't') ADVANCE(931); - END_STATE(); - case 820: - ACCEPT_TOKEN(anon_sym_extends); - END_STATE(); - case 821: - if (lookahead == 'l') ADVANCE(932); - END_STATE(); - case 822: - if (lookahead == 'o') ADVANCE(933); - END_STATE(); - case 823: - ACCEPT_TOKEN(anon_sym_finally); - END_STATE(); - case 824: - if (lookahead == 'p') ADVANCE(934); - END_STATE(); - case 825: - if (lookahead == 't') ADVANCE(935); - END_STATE(); - case 826: - if (lookahead == 'a') ADVANCE(936); - END_STATE(); - case 827: - if (lookahead == 'n') ADVANCE(937); - END_STATE(); - case 828: - ACCEPT_TOKEN(anon_sym_fxgroup); - END_STATE(); - case 829: - if (lookahead == 'i') ADVANCE(938); - END_STATE(); - case 830: - if (lookahead == 'a') ADVANCE(939); - END_STATE(); - case 831: - if (lookahead == 'n') ADVANCE(940); - END_STATE(); - case 832: - if (lookahead == 'e') ADVANCE(941); - END_STATE(); - case 833: - if (lookahead == 'c') ADVANCE(942); - END_STATE(); - case 834: - if (lookahead == 'l') ADVANCE(943); - END_STATE(); - case 835: - if (lookahead == 'n') ADVANCE(944); - END_STATE(); - case 836: - if (lookahead == 'n') ADVANCE(945); - END_STATE(); - case 837: - if (lookahead == 'n') ADVANCE(946); - END_STATE(); - case 838: - if (lookahead == 'u') ADVANCE(947); - END_STATE(); - case 839: - ACCEPT_TOKEN(anon_sym_mediump); - END_STATE(); - case 840: - ACCEPT_TOKEN(anon_sym_mutable); - END_STATE(); - case 841: - if (lookahead == 'c') ADVANCE(948); - END_STATE(); - case 842: - if (lookahead == 't') ADVANCE(949); - END_STATE(); - case 843: - if (lookahead == 'e') ADVANCE(950); - END_STATE(); - case 844: - if (lookahead == 'p') ADVANCE(951); - END_STATE(); - case 845: - if (lookahead == 'e') ADVANCE(952); - END_STATE(); - case 846: - ACCEPT_TOKEN(anon_sym_nullptr); - END_STATE(); - case 847: - if (lookahead == 'k') ADVANCE(953); - END_STATE(); - case 848: - if (lookahead == 'r') ADVANCE(954); - END_STATE(); - case 849: - if (lookahead == 'e') ADVANCE(955); - END_STATE(); - case 850: - ACCEPT_TOKEN(anon_sym_package); - END_STATE(); - case 851: - if (lookahead == 's') ADVANCE(956); - END_STATE(); - case 852: - if (lookahead == 'o') ADVANCE(957); - END_STATE(); - case 853: - if (lookahead == 't') ADVANCE(958); - END_STATE(); - case 854: - if (lookahead == 'a') ADVANCE(959); - END_STATE(); - case 855: - if (lookahead == 'n') ADVANCE(960); - END_STATE(); - case 856: - ACCEPT_TOKEN(anon_sym_precise); - END_STATE(); - case 857: - if (lookahead == 'o') ADVANCE(961); - END_STATE(); - case 858: - if (lookahead == 'e') ADVANCE(962); - END_STATE(); - case 859: - ACCEPT_TOKEN(anon_sym_private); - END_STATE(); - case 860: - if (lookahead == 'e') ADVANCE(963); - END_STATE(); - case 861: - if (lookahead == 't') ADVANCE(964); - END_STATE(); - case 862: - ACCEPT_TOKEN(anon_sym_r32sint); - END_STATE(); - case 863: - ACCEPT_TOKEN(anon_sym_r32uint); - END_STATE(); - case 864: - if (lookahead == 'i') ADVANCE(965); - END_STATE(); - case 865: - if (lookahead == 'y') ADVANCE(966); - END_STATE(); - case 866: - if (lookahead == 'e') ADVANCE(967); - END_STATE(); - case 867: - if (lookahead == 'r') ADVANCE(968); - END_STATE(); - case 868: - if (lookahead == 'p') ADVANCE(969); - END_STATE(); - case 869: - if (lookahead == 's') ADVANCE(970); - END_STATE(); - case 870: - if (lookahead == 'e') ADVANCE(971); - END_STATE(); - case 871: - if (lookahead == 't') ADVANCE(972); - END_STATE(); - case 872: - if (lookahead == 'a') ADVANCE(973); - END_STATE(); - case 873: - if (lookahead == 't') ADVANCE(974); - END_STATE(); - case 874: - if (lookahead == 't') ADVANCE(975); - END_STATE(); - case 875: - if (lookahead == 'l') ADVANCE(976); - END_STATE(); - case 876: - if (lookahead == 'i') ADVANCE(977); - END_STATE(); - case 877: - if (lookahead == 'i') ADVANCE(978); - END_STATE(); - case 878: - if (lookahead == 'l') ADVANCE(979); - END_STATE(); - case 879: - if (lookahead == 'i') ADVANCE(980); - END_STATE(); - case 880: - if (lookahead == 'i') ADVANCE(981); - END_STATE(); - case 881: - if (lookahead == 'n') ADVANCE(982); - END_STATE(); - case 882: - if (lookahead == 'o') ADVANCE(983); - END_STATE(); - case 883: - if (lookahead == 'n') ADVANCE(984); - END_STATE(); - case 884: - if (lookahead == 'o') ADVANCE(985); - END_STATE(); - case 885: - if (lookahead == 'i') ADVANCE(986); - if (lookahead == 'm') ADVANCE(987); - END_STATE(); - case 886: - ACCEPT_TOKEN(anon_sym_sampler); - if (lookahead == '_') ADVANCE(988); - END_STATE(); - case 887: - if (lookahead == 'a') ADVANCE(989); - if (lookahead == 'c') ADVANCE(990); - END_STATE(); - case 888: - ACCEPT_TOKEN(anon_sym_storage); - END_STATE(); - case 889: - if (lookahead == 'i') ADVANCE(991); - END_STATE(); - case 890: - if (lookahead == 'e') ADVANCE(992); - END_STATE(); - case 891: - if (lookahead == '_') ADVANCE(993); - END_STATE(); - case 892: - if (lookahead == 'l') ADVANCE(994); - END_STATE(); - case 893: - ACCEPT_TOKEN(anon_sym_typedef); - END_STATE(); - case 894: - if (lookahead == 'e') ADVANCE(995); - END_STATE(); - case 895: - ACCEPT_TOKEN(anon_sym_uniform); - END_STATE(); - case 896: - ACCEPT_TOKEN(anon_sym_unsized); - END_STATE(); - case 897: - ACCEPT_TOKEN(anon_sym_varying); - END_STATE(); - case 898: - if (lookahead == 'i') ADVANCE(996); - END_STATE(); - case 899: - ACCEPT_TOKEN(anon_sym_virtual); - END_STATE(); - case 900: - if (lookahead == 'e') ADVANCE(997); - END_STATE(); - case 901: - if (lookahead == 'u') ADVANCE(998); - END_STATE(); - case 902: - if (lookahead == 'l') ADVANCE(999); - END_STATE(); - case 903: - if (lookahead == 'h') ADVANCE(1000); - END_STATE(); - case 904: - if (lookahead == 'h') ADVANCE(1001); - END_STATE(); - case 905: - if (lookahead == 'a') ADVANCE(1002); - END_STATE(); - case 906: - if (lookahead == 'S') ADVANCE(1003); - END_STATE(); - case 907: - if (lookahead == 'e') ADVANCE(1004); - END_STATE(); - case 908: - ACCEPT_TOKEN(anon_sym_abstract); - END_STATE(); - case 909: - if (lookahead == 'm') ADVANCE(1005); - END_STATE(); - case 910: - if (lookahead == 'e') ADVANCE(1006); - END_STATE(); - case 911: - if (lookahead == 'r') ADVANCE(1007); - END_STATE(); - case 912: - if (lookahead == 'a') ADVANCE(1008); - END_STATE(); - case 913: - ACCEPT_TOKEN(anon_sym_centroid); - END_STATE(); - case 914: - ACCEPT_TOKEN(anon_sym_co_await); - END_STATE(); - case 915: - if (lookahead == 'n') ADVANCE(1009); - END_STATE(); - case 916: - ACCEPT_TOKEN(anon_sym_co_yield); - END_STATE(); - case 917: - ACCEPT_TOKEN(anon_sym_coherent); - END_STATE(); - case 918: - if (lookahead == 'a') ADVANCE(1010); - END_STATE(); - case 919: - if (lookahead == 'f') ADVANCE(1011); - END_STATE(); - case 920: - if (lookahead == 's') ADVANCE(1012); - END_STATE(); - case 921: - if (lookahead == 's') ADVANCE(1013); - END_STATE(); - case 922: - if (lookahead == 'l') ADVANCE(1014); - END_STATE(); - case 923: - if (lookahead == 'r') ADVANCE(1015); - END_STATE(); - case 924: - if (lookahead == 't') ADVANCE(1016); - END_STATE(); - case 925: - ACCEPT_TOKEN(sym_continue_statement); - END_STATE(); - case 926: - if (lookahead == 'n') ADVANCE(1017); - END_STATE(); - case 927: - ACCEPT_TOKEN(anon_sym_debugger); - END_STATE(); - case 928: - ACCEPT_TOKEN(anon_sym_decltype); - END_STATE(); - case 929: - if (lookahead == 'o') ADVANCE(1018); - END_STATE(); - case 930: - if (lookahead == 'c') ADVANCE(1019); - END_STATE(); - case 931: - ACCEPT_TOKEN(anon_sym_explicit); - END_STATE(); - case 932: - ACCEPT_TOKEN(anon_sym_external); - END_STATE(); - case 933: - if (lookahead == 'u') ADVANCE(1020); - END_STATE(); - case 934: - if (lookahead == 't') ADVANCE(1021); - END_STATE(); - case 935: - ACCEPT_TOKEN(anon_sym_fragment); - END_STATE(); - case 936: - if (lookahead == 'c') ADVANCE(1022); - END_STATE(); - case 937: - ACCEPT_TOKEN(anon_sym_function); - END_STATE(); - case 938: - if (lookahead == 'n') ADVANCE(1023); - END_STATE(); - case 939: - if (lookahead == 'r') ADVANCE(1024); - END_STATE(); - case 940: - if (lookahead == 't') ADVANCE(1025); - END_STATE(); - case 941: - if (lookahead == '_') ADVANCE(1026); - if (lookahead == 'o') ADVANCE(1027); - END_STATE(); - case 942: - if (lookahead == 'e') ADVANCE(1028); - END_STATE(); - case 943: - if (lookahead == 'a') ADVANCE(1029); - END_STATE(); - case 944: - if (lookahead == 't') ADVANCE(1030); - END_STATE(); - case 945: - if (lookahead == 'v') ADVANCE(1031); - END_STATE(); - case 946: - ACCEPT_TOKEN(anon_sym_location); - END_STATE(); - case 947: - if (lookahead == 'l') ADVANCE(1032); - END_STATE(); - case 948: - if (lookahead == 'e') ADVANCE(1033); - END_STATE(); - case 949: - ACCEPT_TOKEN(anon_sym_noexcept); - END_STATE(); - case 950: - ACCEPT_TOKEN(anon_sym_noinline); - END_STATE(); - case 951: - if (lookahead == 'o') ADVANCE(1034); - END_STATE(); - case 952: - if (lookahead == 'c') ADVANCE(1035); - END_STATE(); - case 953: - if (lookahead == 'g') ADVANCE(1036); - END_STATE(); - case 954: - ACCEPT_TOKEN(anon_sym_operator); - END_STATE(); - case 955: - ACCEPT_TOKEN(anon_sym_override); - END_STATE(); - case 956: - if (lookahead == 'e') ADVANCE(1037); - END_STATE(); - case 957: - if (lookahead == 'n') ADVANCE(1038); - END_STATE(); - case 958: - if (lookahead == 'i') ADVANCE(1039); - END_STATE(); - case 959: - if (lookahead == 'g') ADVANCE(1040); - END_STATE(); - case 960: - ACCEPT_TOKEN(anon_sym_position); - END_STATE(); - case 961: - if (lookahead == 'n') ADVANCE(1041); - END_STATE(); - case 962: - ACCEPT_TOKEN(anon_sym_premerge); - END_STATE(); - case 963: - if (lookahead == 'd') ADVANCE(1042); - END_STATE(); - case 964: - ACCEPT_TOKEN(anon_sym_r32float); - END_STATE(); - case 965: - if (lookahead == 't') ADVANCE(1043); - END_STATE(); - case 966: - ACCEPT_TOKEN(anon_sym_readonly); - END_STATE(); - case 967: - if (lookahead == 's') ADVANCE(1044); - END_STATE(); - case 968: - ACCEPT_TOKEN(anon_sym_register); - END_STATE(); - case 969: - if (lookahead == 'r') ADVANCE(1045); - END_STATE(); - case 970: - ACCEPT_TOKEN(anon_sym_requires); - END_STATE(); - case 971: - ACCEPT_TOKEN(anon_sym_resource); - END_STATE(); - case 972: - ACCEPT_TOKEN(anon_sym_restrict); - END_STATE(); - case 973: - if (lookahead == 't') ADVANCE(1046); - END_STATE(); - case 974: - ACCEPT_TOKEN(anon_sym_rg32sint); - END_STATE(); - case 975: - ACCEPT_TOKEN(anon_sym_rg32uint); - END_STATE(); - case 976: - if (lookahead == 'o') ADVANCE(1047); - END_STATE(); - case 977: - if (lookahead == 'n') ADVANCE(1048); - END_STATE(); - case 978: - if (lookahead == 'n') ADVANCE(1049); - END_STATE(); - case 979: - if (lookahead == 'o') ADVANCE(1050); - END_STATE(); - case 980: - if (lookahead == 'n') ADVANCE(1051); - END_STATE(); - case 981: - if (lookahead == 'n') ADVANCE(1052); - END_STATE(); - case 982: - if (lookahead == 't') ADVANCE(1053); - END_STATE(); - case 983: - if (lookahead == 'r') ADVANCE(1054); - END_STATE(); - case 984: - if (lookahead == 't') ADVANCE(1055); - END_STATE(); - case 985: - if (lookahead == 'r') ADVANCE(1056); - END_STATE(); - case 986: - if (lookahead == 'n') ADVANCE(1057); - END_STATE(); - case 987: - if (lookahead == 'a') ADVANCE(1058); - END_STATE(); - case 988: - if (lookahead == 'c') ADVANCE(1059); - END_STATE(); - case 989: - if (lookahead == 's') ADVANCE(1060); - END_STATE(); - case 990: - if (lookahead == 'a') ADVANCE(1061); - END_STATE(); - case 991: - if (lookahead == 'n') ADVANCE(1062); - END_STATE(); - case 992: - ACCEPT_TOKEN(anon_sym_template); - END_STATE(); - case 993: - if (lookahead == '1') ADVANCE(1063); - if (lookahead == '2') ADVANCE(1064); - if (lookahead == '3') ADVANCE(1065); - if (lookahead == 'c') ADVANCE(1066); - if (lookahead == 'd') ADVANCE(1067); - if (lookahead == 'm') ADVANCE(1068); - if (lookahead == 's') ADVANCE(1069); - END_STATE(); - case 994: - if (lookahead == 'o') ADVANCE(1070); - END_STATE(); - case 995: - ACCEPT_TOKEN(anon_sym_typename); - END_STATE(); - case 996: - if (lookahead == 'n') ADVANCE(1071); - END_STATE(); - case 997: - ACCEPT_TOKEN(anon_sym_volatile); - END_STATE(); - case 998: - if (lookahead == 'p') ADVANCE(1072); - END_STATE(); - case 999: - if (lookahead == 'y') ADVANCE(1073); - END_STATE(); - case 1000: - if (lookahead == 'a') ADVANCE(1074); - END_STATE(); - case 1001: - if (lookahead == 'a') ADVANCE(1075); - END_STATE(); - case 1002: - if (lookahead == 'd') ADVANCE(1076); - END_STATE(); - case 1003: - if (lookahead == 'h') ADVANCE(1077); - END_STATE(); - case 1004: - if (lookahead == 'r') ADVANCE(1078); - END_STATE(); - case 1005: - if (lookahead == 'e') ADVANCE(1079); - END_STATE(); - case 1006: - ACCEPT_TOKEN(anon_sym_attribute); - END_STATE(); - case 1007: - if (lookahead == 'm') ADVANCE(1080); - END_STATE(); - case 1008: - if (lookahead == 'r') ADVANCE(1081); - END_STATE(); - case 1009: - ACCEPT_TOKEN(anon_sym_co_return); - END_STATE(); - case 1010: - if (lookahead == 'j') ADVANCE(1082); - END_STATE(); - case 1011: - if (lookahead == 'r') ADVANCE(1083); - END_STATE(); - case 1012: - if (lookahead == 'e') ADVANCE(1084); - END_STATE(); - case 1013: - if (lookahead == 't') ADVANCE(1085); - END_STATE(); - case 1014: - ACCEPT_TOKEN(anon_sym_consteval); - END_STATE(); - case 1015: - ACCEPT_TOKEN(anon_sym_constexpr); - END_STATE(); - case 1016: - ACCEPT_TOKEN(anon_sym_constinit); - END_STATE(); - case 1017: - if (lookahead == 'g') ADVANCE(1086); - END_STATE(); - case 1018: - if (lookahead == '_') ADVANCE(1087); - END_STATE(); - case 1019: - if (lookahead == 'a') ADVANCE(1088); - END_STATE(); - case 1020: - if (lookahead == 'g') ADVANCE(1089); - END_STATE(); - case 1021: - if (lookahead == 'h') ADVANCE(1090); - END_STATE(); - case 1022: - if (lookahead == 'i') ADVANCE(1091); - END_STATE(); - case 1023: - if (lookahead == 'v') ADVANCE(1092); - END_STATE(); - case 1024: - if (lookahead == 'e') ADVANCE(1093); - END_STATE(); - case 1025: - if (lookahead == 's') ADVANCE(1094); - END_STATE(); - case 1026: - if (lookahead == 'i') ADVANCE(1095); - END_STATE(); - case 1027: - if (lookahead == 'f') ADVANCE(1096); - END_STATE(); - case 1028: - ACCEPT_TOKEN(anon_sym_interface); - END_STATE(); - case 1029: - if (lookahead == 't') ADVANCE(1097); - END_STATE(); - case 1030: - ACCEPT_TOKEN(anon_sym_invariant); - END_STATE(); - case 1031: - if (lookahead == 'o') ADVANCE(1098); - END_STATE(); - case 1032: - if (lookahead == 'e') ADVANCE(1099); - END_STATE(); - case 1033: - ACCEPT_TOKEN(anon_sym_namespace); - END_STATE(); - case 1034: - if (lookahead == 'l') ADVANCE(1100); - END_STATE(); - case 1035: - if (lookahead == 't') ADVANCE(1101); - END_STATE(); - case 1036: - if (lookahead == 'r') ADVANCE(1102); - END_STATE(); - case 1037: - if (lookahead == 't') ADVANCE(1103); - END_STATE(); - case 1038: - ACCEPT_TOKEN(anon_sym_partition); - END_STATE(); - case 1039: - if (lookahead == 'v') ADVANCE(1104); - END_STATE(); - case 1040: - if (lookahead == 'm') ADVANCE(1105); - END_STATE(); - case 1041: - ACCEPT_TOKEN(anon_sym_precision); - END_STATE(); - case 1042: - ACCEPT_TOKEN(anon_sym_protected); - END_STATE(); - case 1043: - if (lookahead == 'e') ADVANCE(1106); - END_STATE(); - case 1044: - if (lookahead == 's') ADVANCE(1107); - END_STATE(); - case 1045: - if (lookahead == 'e') ADVANCE(1108); - END_STATE(); - case 1046: - ACCEPT_TOKEN(anon_sym_rg32float); - END_STATE(); - case 1047: - if (lookahead == 'a') ADVANCE(1109); - END_STATE(); - case 1048: - if (lookahead == 't') ADVANCE(1110); - END_STATE(); - case 1049: - if (lookahead == 't') ADVANCE(1111); - END_STATE(); - case 1050: - if (lookahead == 'a') ADVANCE(1112); - END_STATE(); - case 1051: - if (lookahead == 't') ADVANCE(1113); - END_STATE(); - case 1052: - if (lookahead == 't') ADVANCE(1114); - END_STATE(); - case 1053: - ACCEPT_TOKEN(anon_sym_rgba8sint); - END_STATE(); - case 1054: - if (lookahead == 'm') ADVANCE(1115); - END_STATE(); - case 1055: - ACCEPT_TOKEN(anon_sym_rgba8uint); - END_STATE(); - case 1056: - if (lookahead == 'm') ADVANCE(1116); - END_STATE(); - case 1057: - if (lookahead == 'd') ADVANCE(1117); - END_STATE(); - case 1058: - if (lookahead == 's') ADVANCE(1118); - END_STATE(); - case 1059: - if (lookahead == 'o') ADVANCE(1119); - END_STATE(); - case 1060: - if (lookahead == 's') ADVANCE(1120); - END_STATE(); - case 1061: - if (lookahead == 's') ADVANCE(1121); - END_STATE(); - case 1062: - if (lookahead == 'e') ADVANCE(1122); - END_STATE(); - case 1063: - if (lookahead == 'd') ADVANCE(1123); - END_STATE(); - case 1064: - if (lookahead == 'd') ADVANCE(1124); - END_STATE(); - case 1065: - if (lookahead == 'd') ADVANCE(1125); - END_STATE(); - case 1066: - if (lookahead == 'u') ADVANCE(1126); - END_STATE(); - case 1067: - if (lookahead == 'e') ADVANCE(1127); - END_STATE(); - case 1068: - if (lookahead == 'u') ADVANCE(1128); - END_STATE(); - case 1069: - if (lookahead == 't') ADVANCE(1129); - END_STATE(); - case 1070: - if (lookahead == 'c') ADVANCE(1130); - END_STATE(); - case 1071: - if (lookahead == 'd') ADVANCE(1131); - END_STATE(); - case 1072: - ACCEPT_TOKEN(anon_sym_workgroup); - if (lookahead == '_') ADVANCE(1132); - END_STATE(); - case 1073: - ACCEPT_TOKEN(anon_sym_writeonly); - END_STATE(); - case 1074: - if (lookahead == 'd') ADVANCE(1133); - END_STATE(); - case 1075: - if (lookahead == 'd') ADVANCE(1134); - END_STATE(); - case 1076: - if (lookahead == 'e') ADVANCE(1135); - END_STATE(); - case 1077: - if (lookahead == 'a') ADVANCE(1136); - END_STATE(); - case 1078: - ACCEPT_TOKEN(anon_sym_Hullshader); - END_STATE(); - case 1079: - if (lookahead == 'n') ADVANCE(1137); - END_STATE(); - case 1080: - ACCEPT_TOKEN(anon_sym_bgra8unorm); - END_STATE(); - case 1081: - if (lookahead == 'r') ADVANCE(1138); - END_STATE(); - case 1082: - if (lookahead == 'o') ADVANCE(1139); - END_STATE(); - case 1083: - if (lookahead == 'a') ADVANCE(1140); - END_STATE(); - case 1084: - if (lookahead == 'r') ADVANCE(1141); - END_STATE(); - case 1085: - ACCEPT_TOKEN(anon_sym_const_cast); - END_STATE(); - case 1086: - ACCEPT_TOKEN(anon_sym_continuing); - END_STATE(); - case 1087: - if (lookahead == 'h') ADVANCE(1142); - END_STATE(); - case 1088: - if (lookahead == 's') ADVANCE(1143); - END_STATE(); - case 1089: - if (lookahead == 'h') ADVANCE(1144); - END_STATE(); - case 1090: - ACCEPT_TOKEN(anon_sym_frag_depth); - END_STATE(); - case 1091: - if (lookahead == 'n') ADVANCE(1145); - END_STATE(); - case 1092: - if (lookahead == 'o') ADVANCE(1146); - END_STATE(); - case 1093: - if (lookahead == 'd') ADVANCE(1147); - END_STATE(); - case 1094: - ACCEPT_TOKEN(anon_sym_implements); - END_STATE(); - case 1095: - if (lookahead == 'n') ADVANCE(1148); - END_STATE(); - case 1096: - ACCEPT_TOKEN(anon_sym_instanceof); - END_STATE(); - case 1097: - if (lookahead == 'e') ADVANCE(1149); - END_STATE(); - case 1098: - if (lookahead == 'c') ADVANCE(1150); - END_STATE(); - case 1099: - if (lookahead == 's') ADVANCE(1151); - END_STATE(); - case 1100: - if (lookahead == 'a') ADVANCE(1152); - END_STATE(); - case 1101: - if (lookahead == 'i') ADVANCE(1153); - END_STATE(); - case 1102: - if (lookahead == 'o') ADVANCE(1154); - END_STATE(); - case 1103: - ACCEPT_TOKEN(anon_sym_packoffset); - END_STATE(); - case 1104: - if (lookahead == 'e') ADVANCE(1155); - END_STATE(); - case 1105: - if (lookahead == 'e') ADVANCE(1156); - END_STATE(); - case 1106: - ACCEPT_TOKEN(anon_sym_read_write); - END_STATE(); - case 1107: - ACCEPT_TOKEN(anon_sym_regardless); - END_STATE(); - case 1108: - if (lookahead == 't') ADVANCE(1157); - END_STATE(); - case 1109: - if (lookahead == 't') ADVANCE(1158); - END_STATE(); - case 1110: - ACCEPT_TOKEN(anon_sym_rgba16sint); - END_STATE(); - case 1111: - ACCEPT_TOKEN(anon_sym_rgba16uint); - END_STATE(); - case 1112: - if (lookahead == 't') ADVANCE(1159); - END_STATE(); - case 1113: - ACCEPT_TOKEN(anon_sym_rgba32sint); - END_STATE(); - case 1114: - ACCEPT_TOKEN(anon_sym_rgba32uint); - END_STATE(); - case 1115: - ACCEPT_TOKEN(anon_sym_rgba8snorm); - END_STATE(); - case 1116: - ACCEPT_TOKEN(anon_sym_rgba8unorm); - END_STATE(); - case 1117: - if (lookahead == 'e') ADVANCE(1160); - END_STATE(); - case 1118: - if (lookahead == 'k') ADVANCE(1161); - END_STATE(); - case 1119: - if (lookahead == 'm') ADVANCE(1162); - END_STATE(); - case 1120: - if (lookahead == 'e') ADVANCE(1163); - END_STATE(); - case 1121: - if (lookahead == 't') ADVANCE(1164); - END_STATE(); - case 1122: - ACCEPT_TOKEN(anon_sym_subroutine); - END_STATE(); - case 1123: - ACCEPT_TOKEN(anon_sym_texture_1d); - END_STATE(); - case 1124: - ACCEPT_TOKEN(anon_sym_texture_2d); - if (lookahead == '_') ADVANCE(1165); - END_STATE(); - case 1125: - ACCEPT_TOKEN(anon_sym_texture_3d); - END_STATE(); - case 1126: - if (lookahead == 'b') ADVANCE(1166); - END_STATE(); - case 1127: - if (lookahead == 'p') ADVANCE(1167); - END_STATE(); - case 1128: - if (lookahead == 'l') ADVANCE(1168); - END_STATE(); - case 1129: - if (lookahead == 'o') ADVANCE(1169); - END_STATE(); - case 1130: - if (lookahead == 'a') ADVANCE(1170); - END_STATE(); - case 1131: - if (lookahead == 'e') ADVANCE(1171); - END_STATE(); - case 1132: - if (lookahead == 'i') ADVANCE(1172); - if (lookahead == 's') ADVANCE(1173); - END_STATE(); - case 1133: - if (lookahead == 'e') ADVANCE(1174); - END_STATE(); - case 1134: - if (lookahead == 'e') ADVANCE(1175); - END_STATE(); - case 1135: - if (lookahead == 'r') ADVANCE(1176); - END_STATE(); - case 1136: - if (lookahead == 'd') ADVANCE(1177); - END_STATE(); - case 1137: - if (lookahead == 't') ADVANCE(1178); - END_STATE(); - case 1138: - if (lookahead == 'a') ADVANCE(1179); - END_STATE(); - case 1139: - if (lookahead == 'r') ADVANCE(1180); - END_STATE(); - case 1140: - if (lookahead == 'g') ADVANCE(1181); - END_STATE(); - case 1141: - if (lookahead == 't') ADVANCE(1182); - END_STATE(); - case 1142: - if (lookahead == 'e') ADVANCE(1183); - END_STATE(); - case 1143: - if (lookahead == 't') ADVANCE(1184); - END_STATE(); - case 1144: - ACCEPT_TOKEN(anon_sym_fallthrough); - END_STATE(); - case 1145: - if (lookahead == 'g') ADVANCE(1185); - END_STATE(); - case 1146: - if (lookahead == 'c') ADVANCE(1186); - END_STATE(); - case 1147: - ACCEPT_TOKEN(anon_sym_groupshared); - END_STATE(); - case 1148: - if (lookahead == 'd') ADVANCE(1187); - END_STATE(); - case 1149: - ACCEPT_TOKEN(anon_sym_interpolate); - END_STATE(); - case 1150: - if (lookahead == 'a') ADVANCE(1188); - END_STATE(); - case 1151: - ACCEPT_TOKEN(anon_sym_macro_rules); - END_STATE(); - case 1152: - if (lookahead == 't') ADVANCE(1189); - END_STATE(); - case 1153: - if (lookahead == 'v') ADVANCE(1190); - END_STATE(); - case 1154: - if (lookahead == 'u') ADVANCE(1191); - END_STATE(); - case 1155: - ACCEPT_TOKEN(anon_sym_perspective); - END_STATE(); - case 1156: - if (lookahead == 'n') ADVANCE(1192); - END_STATE(); - case 1157: - if (lookahead == '_') ADVANCE(1193); - END_STATE(); - case 1158: - ACCEPT_TOKEN(anon_sym_rgba16float); - END_STATE(); - case 1159: - ACCEPT_TOKEN(anon_sym_rgba32float); - END_STATE(); - case 1160: - if (lookahead == 'x') ADVANCE(1194); - END_STATE(); - case 1161: - ACCEPT_TOKEN(anon_sym_sample_mask); - END_STATE(); - case 1162: - if (lookahead == 'p') ADVANCE(1195); - END_STATE(); - case 1163: - if (lookahead == 'r') ADVANCE(1196); - END_STATE(); - case 1164: - ACCEPT_TOKEN(anon_sym_static_cast); - END_STATE(); - case 1165: - if (lookahead == 'a') ADVANCE(1197); - END_STATE(); - case 1166: - if (lookahead == 'e') ADVANCE(1198); - END_STATE(); - case 1167: - if (lookahead == 't') ADVANCE(1199); - END_STATE(); - case 1168: - if (lookahead == 't') ADVANCE(1200); - END_STATE(); - case 1169: - if (lookahead == 'r') ADVANCE(1201); - END_STATE(); - case 1170: - if (lookahead == 'l') ADVANCE(1202); - END_STATE(); - case 1171: - if (lookahead == 'x') ADVANCE(1203); - END_STATE(); - case 1172: - if (lookahead == 'd') ADVANCE(1204); - END_STATE(); - case 1173: - if (lookahead == 'i') ADVANCE(1205); - END_STATE(); - case 1174: - if (lookahead == 'r') ADVANCE(1206); - END_STATE(); - case 1175: - if (lookahead == 'r') ADVANCE(1207); - END_STATE(); - case 1176: - ACCEPT_TOKEN(anon_sym_DomainShader); - END_STATE(); - case 1177: - if (lookahead == 'e') ADVANCE(1208); - END_STATE(); - case 1178: - ACCEPT_TOKEN(anon_sym_asm_fragment); - END_STATE(); - case 1179: - if (lookahead == 'y') ADVANCE(1209); - END_STATE(); - case 1180: - ACCEPT_TOKEN(anon_sym_column_major); - END_STATE(); - case 1181: - if (lookahead == 'm') ADVANCE(1210); - END_STATE(); - case 1182: - ACCEPT_TOKEN(anon_sym_const_assert); - END_STATE(); - case 1183: - if (lookahead == 'l') ADVANCE(1211); - END_STATE(); - case 1184: - ACCEPT_TOKEN(anon_sym_dynamic_cast); - END_STATE(); - case 1185: - ACCEPT_TOKEN(anon_sym_front_facing); - END_STATE(); - case 1186: - if (lookahead == 'a') ADVANCE(1212); - END_STATE(); - case 1187: - if (lookahead == 'e') ADVANCE(1213); - END_STATE(); - case 1188: - if (lookahead == 't') ADVANCE(1214); - END_STATE(); - case 1189: - if (lookahead == 'i') ADVANCE(1215); - END_STATE(); - case 1190: - if (lookahead == 'e') ADVANCE(1216); - END_STATE(); - case 1191: - if (lookahead == 'p') ADVANCE(1217); - END_STATE(); - case 1192: - if (lookahead == 't') ADVANCE(1218); - END_STATE(); - case 1193: - if (lookahead == 'c') ADVANCE(1219); - END_STATE(); - case 1194: - ACCEPT_TOKEN(anon_sym_sample_index); - END_STATE(); - case 1195: - if (lookahead == 'a') ADVANCE(1220); - END_STATE(); - case 1196: - if (lookahead == 't') ADVANCE(1221); - END_STATE(); - case 1197: - if (lookahead == 'r') ADVANCE(1222); - END_STATE(); - case 1198: - ACCEPT_TOKEN(anon_sym_texture_cube); - if (lookahead == '_') ADVANCE(1223); - END_STATE(); - case 1199: - if (lookahead == 'h') ADVANCE(1224); - END_STATE(); - case 1200: - if (lookahead == 'i') ADVANCE(1225); - END_STATE(); - case 1201: - if (lookahead == 'a') ADVANCE(1226); - END_STATE(); - case 1202: - ACCEPT_TOKEN(anon_sym_thread_local); - END_STATE(); - case 1203: - ACCEPT_TOKEN(anon_sym_vertex_index); - END_STATE(); - case 1204: - ACCEPT_TOKEN(anon_sym_workgroup_id); - END_STATE(); - case 1205: - if (lookahead == 'z') ADVANCE(1227); - END_STATE(); - case 1206: - ACCEPT_TOKEN(anon_sym_CompileShader); - END_STATE(); - case 1207: - ACCEPT_TOKEN(anon_sym_ComputeShader); - END_STATE(); - case 1208: - if (lookahead == 'r') ADVANCE(1228); - END_STATE(); - case 1209: - ACCEPT_TOKEN(anon_sym_binding_array); - END_STATE(); - case 1210: - if (lookahead == 'e') ADVANCE(1229); - END_STATE(); - case 1211: - if (lookahead == 'p') ADVANCE(1230); - END_STATE(); - case 1212: - if (lookahead == 't') ADVANCE(1231); - END_STATE(); - case 1213: - if (lookahead == 'x') ADVANCE(1232); - END_STATE(); - case 1214: - if (lookahead == 'i') ADVANCE(1233); - END_STATE(); - case 1215: - if (lookahead == 'o') ADVANCE(1234); - END_STATE(); - case 1216: - ACCEPT_TOKEN(anon_sym_noperspective); - END_STATE(); - case 1217: - if (lookahead == 's') ADVANCE(1235); - END_STATE(); - case 1218: - ACCEPT_TOKEN(anon_sym_pixelfragment); - END_STATE(); - case 1219: - if (lookahead == 'a') ADVANCE(1236); - END_STATE(); - case 1220: - if (lookahead == 'r') ADVANCE(1237); - END_STATE(); - case 1221: - ACCEPT_TOKEN(anon_sym_static_assert); - END_STATE(); - case 1222: - if (lookahead == 'r') ADVANCE(1238); - END_STATE(); - case 1223: - if (lookahead == 'a') ADVANCE(1239); - END_STATE(); - case 1224: - if (lookahead == '_') ADVANCE(1240); - END_STATE(); - case 1225: - if (lookahead == 's') ADVANCE(1241); - END_STATE(); - case 1226: - if (lookahead == 'g') ADVANCE(1242); - END_STATE(); - case 1227: - if (lookahead == 'e') ADVANCE(1243); - END_STATE(); - case 1228: - ACCEPT_TOKEN(anon_sym_GeometryShader); - END_STATE(); - case 1229: - if (lookahead == 'n') ADVANCE(1244); - END_STATE(); - case 1230: - if (lookahead == 'e') ADVANCE(1245); - END_STATE(); - case 1231: - if (lookahead == 'i') ADVANCE(1246); - END_STATE(); - case 1232: - ACCEPT_TOKEN(anon_sym_instance_index); - END_STATE(); - case 1233: - if (lookahead == 'o') ADVANCE(1247); - END_STATE(); - case 1234: - if (lookahead == 'n') ADVANCE(1248); - END_STATE(); - case 1235: - ACCEPT_TOKEN(anon_sym_num_workgroups); - END_STATE(); - case 1236: - if (lookahead == 's') ADVANCE(1249); - END_STATE(); - case 1237: - if (lookahead == 'i') ADVANCE(1250); - END_STATE(); - case 1238: - if (lookahead == 'a') ADVANCE(1251); - END_STATE(); - case 1239: - if (lookahead == 'r') ADVANCE(1252); - END_STATE(); - case 1240: - if (lookahead == '2') ADVANCE(1253); - if (lookahead == 'c') ADVANCE(1254); - if (lookahead == 'm') ADVANCE(1255); - END_STATE(); - case 1241: - if (lookahead == 'a') ADVANCE(1256); - END_STATE(); - case 1242: - if (lookahead == 'e') ADVANCE(1257); - END_STATE(); - case 1243: - ACCEPT_TOKEN(anon_sym_workgroup_size); - END_STATE(); - case 1244: - if (lookahead == 't') ADVANCE(1258); - END_STATE(); - case 1245: - if (lookahead == 'r') ADVANCE(1259); - END_STATE(); - case 1246: - if (lookahead == 'o') ADVANCE(1260); - END_STATE(); - case 1247: - if (lookahead == 'n') ADVANCE(1261); - END_STATE(); - case 1248: - ACCEPT_TOKEN(anon_sym_nointerpolation); - END_STATE(); - case 1249: - if (lookahead == 't') ADVANCE(1262); - END_STATE(); - case 1250: - if (lookahead == 's') ADVANCE(1263); - END_STATE(); - case 1251: - if (lookahead == 'y') ADVANCE(1264); - END_STATE(); - case 1252: - if (lookahead == 'r') ADVANCE(1265); - END_STATE(); - case 1253: - if (lookahead == 'd') ADVANCE(1266); - END_STATE(); - case 1254: - if (lookahead == 'u') ADVANCE(1267); - END_STATE(); - case 1255: - if (lookahead == 'u') ADVANCE(1268); - END_STATE(); - case 1256: - if (lookahead == 'm') ADVANCE(1269); - END_STATE(); - case 1257: - if (lookahead == '_') ADVANCE(1270); - END_STATE(); - case 1258: - ACCEPT_TOKEN(anon_sym_compile_fragment); - END_STATE(); - case 1259: - ACCEPT_TOKEN(anon_sym_demote_to_helper); - END_STATE(); - case 1260: - if (lookahead == 'n') ADVANCE(1271); - END_STATE(); - case 1261: - if (lookahead == '_') ADVANCE(1272); - END_STATE(); - case 1262: - ACCEPT_TOKEN(anon_sym_reinterpret_cast); - END_STATE(); - case 1263: - if (lookahead == 'o') ADVANCE(1273); - END_STATE(); - case 1264: - ACCEPT_TOKEN(anon_sym_texture_2d_array); - END_STATE(); - case 1265: - if (lookahead == 'a') ADVANCE(1274); - END_STATE(); - case 1266: - ACCEPT_TOKEN(anon_sym_texture_depth_2d); - if (lookahead == '_') ADVANCE(1275); - END_STATE(); - case 1267: - if (lookahead == 'b') ADVANCE(1276); - END_STATE(); - case 1268: - if (lookahead == 'l') ADVANCE(1277); - END_STATE(); - case 1269: - if (lookahead == 'p') ADVANCE(1278); - END_STATE(); - case 1270: - if (lookahead == '1') ADVANCE(1279); - if (lookahead == '2') ADVANCE(1280); - if (lookahead == '3') ADVANCE(1281); - END_STATE(); - case 1271: - if (lookahead == '_') ADVANCE(1282); - END_STATE(); - case 1272: - if (lookahead == 'i') ADVANCE(1283); - END_STATE(); - case 1273: - if (lookahead == 'n') ADVANCE(1284); - END_STATE(); - case 1274: - if (lookahead == 'y') ADVANCE(1285); - END_STATE(); - case 1275: - if (lookahead == 'a') ADVANCE(1286); - END_STATE(); - case 1276: - if (lookahead == 'e') ADVANCE(1287); - END_STATE(); - case 1277: - if (lookahead == 't') ADVANCE(1288); - END_STATE(); - case 1278: - if (lookahead == 'l') ADVANCE(1289); - END_STATE(); - case 1279: - if (lookahead == 'd') ADVANCE(1290); - END_STATE(); - case 1280: - if (lookahead == 'd') ADVANCE(1291); - END_STATE(); - case 1281: - if (lookahead == 'd') ADVANCE(1292); - END_STATE(); - case 1282: - if (lookahead == 'i') ADVANCE(1293); - END_STATE(); - case 1283: - if (lookahead == 'd') ADVANCE(1294); - if (lookahead == 'n') ADVANCE(1295); - END_STATE(); - case 1284: - ACCEPT_TOKEN(anon_sym_sampler_comparison); - END_STATE(); - case 1285: - ACCEPT_TOKEN(anon_sym_texture_cube_array); - END_STATE(); - case 1286: - if (lookahead == 'r') ADVANCE(1296); - END_STATE(); - case 1287: - ACCEPT_TOKEN(anon_sym_texture_depth_cube); - if (lookahead == '_') ADVANCE(1297); - END_STATE(); - case 1288: - if (lookahead == 'i') ADVANCE(1298); - END_STATE(); - case 1289: - if (lookahead == 'e') ADVANCE(1299); - END_STATE(); - case 1290: - ACCEPT_TOKEN(anon_sym_texture_storage_1d); - END_STATE(); - case 1291: - ACCEPT_TOKEN(anon_sym_texture_storage_2d); - if (lookahead == '_') ADVANCE(1300); - END_STATE(); - case 1292: - ACCEPT_TOKEN(anon_sym_texture_storage_3d); - END_STATE(); - case 1293: - if (lookahead == 'd') ADVANCE(1301); - END_STATE(); - case 1294: - ACCEPT_TOKEN(anon_sym_local_invocation_id); - END_STATE(); - case 1295: - if (lookahead == 'd') ADVANCE(1302); - END_STATE(); - case 1296: - if (lookahead == 'r') ADVANCE(1303); - END_STATE(); - case 1297: - if (lookahead == 'a') ADVANCE(1304); - END_STATE(); - case 1298: - if (lookahead == 's') ADVANCE(1305); - END_STATE(); - case 1299: - if (lookahead == 'd') ADVANCE(1306); - END_STATE(); - case 1300: - if (lookahead == 'a') ADVANCE(1307); - END_STATE(); - case 1301: - ACCEPT_TOKEN(anon_sym_global_invocation_id); - END_STATE(); - case 1302: - if (lookahead == 'e') ADVANCE(1308); - END_STATE(); - case 1303: - if (lookahead == 'a') ADVANCE(1309); - END_STATE(); - case 1304: - if (lookahead == 'r') ADVANCE(1310); - END_STATE(); - case 1305: - if (lookahead == 'a') ADVANCE(1311); - END_STATE(); - case 1306: - if (lookahead == '_') ADVANCE(1312); - END_STATE(); - case 1307: - if (lookahead == 'r') ADVANCE(1313); - END_STATE(); - case 1308: - if (lookahead == 'x') ADVANCE(1314); - END_STATE(); - case 1309: - if (lookahead == 'y') ADVANCE(1315); - END_STATE(); - case 1310: - if (lookahead == 'r') ADVANCE(1316); - END_STATE(); - case 1311: - if (lookahead == 'm') ADVANCE(1317); - END_STATE(); - case 1312: - if (lookahead == '2') ADVANCE(1318); - END_STATE(); - case 1313: - if (lookahead == 'r') ADVANCE(1319); - END_STATE(); - case 1314: - ACCEPT_TOKEN(anon_sym_local_invocation_index); - END_STATE(); - case 1315: - ACCEPT_TOKEN(anon_sym_texture_depth_2d_array); - END_STATE(); - case 1316: - if (lookahead == 'a') ADVANCE(1320); - END_STATE(); - case 1317: - if (lookahead == 'p') ADVANCE(1321); - END_STATE(); - case 1318: - if (lookahead == 'd') ADVANCE(1322); - END_STATE(); - case 1319: - if (lookahead == 'a') ADVANCE(1323); - END_STATE(); - case 1320: - if (lookahead == 'y') ADVANCE(1324); - END_STATE(); - case 1321: - if (lookahead == 'l') ADVANCE(1325); - END_STATE(); - case 1322: - ACCEPT_TOKEN(sym_multisampled_texture_type); - END_STATE(); - case 1323: - if (lookahead == 'y') ADVANCE(1326); - END_STATE(); - case 1324: - ACCEPT_TOKEN(anon_sym_texture_depth_cube_array); - END_STATE(); - case 1325: - if (lookahead == 'e') ADVANCE(1327); - END_STATE(); - case 1326: - ACCEPT_TOKEN(anon_sym_texture_storage_2d_array); - END_STATE(); - case 1327: - if (lookahead == 'd') ADVANCE(1328); - END_STATE(); - case 1328: - if (lookahead == '_') ADVANCE(1329); - END_STATE(); - case 1329: - if (lookahead == '2') ADVANCE(1330); - END_STATE(); - case 1330: - if (lookahead == 'd') ADVANCE(1331); - END_STATE(); - case 1331: - ACCEPT_TOKEN(anon_sym_texture_depth_multisampled_2d); - END_STATE(); - default: - return false; - } -} - -static const TSLexMode ts_lex_modes[STATE_COUNT] = { - [0] = {.lex_state = 0, .external_lex_state = 1}, - [1] = {.lex_state = 0, .external_lex_state = 2}, - [2] = {.lex_state = 78, .external_lex_state = 2}, - [3] = {.lex_state = 78, .external_lex_state = 2}, - [4] = {.lex_state = 78, .external_lex_state = 2}, - [5] = {.lex_state = 78, .external_lex_state = 2}, - [6] = {.lex_state = 78, .external_lex_state = 2}, - [7] = {.lex_state = 78, .external_lex_state = 2}, - [8] = {.lex_state = 78, .external_lex_state = 2}, - [9] = {.lex_state = 78, .external_lex_state = 2}, - [10] = {.lex_state = 78, .external_lex_state = 2}, - [11] = {.lex_state = 78, .external_lex_state = 2}, - [12] = {.lex_state = 78, .external_lex_state = 2}, - [13] = {.lex_state = 78, .external_lex_state = 2}, - [14] = {.lex_state = 78, .external_lex_state = 2}, - [15] = {.lex_state = 78, .external_lex_state = 2}, - [16] = {.lex_state = 78, .external_lex_state = 2}, - [17] = {.lex_state = 78, .external_lex_state = 2}, - [18] = {.lex_state = 78, .external_lex_state = 2}, - [19] = {.lex_state = 78, .external_lex_state = 2}, - [20] = {.lex_state = 78, .external_lex_state = 2}, - [21] = {.lex_state = 78, .external_lex_state = 2}, - [22] = {.lex_state = 78, .external_lex_state = 2}, - [23] = {.lex_state = 78, .external_lex_state = 2}, - [24] = {.lex_state = 78, .external_lex_state = 2}, - [25] = {.lex_state = 78, .external_lex_state = 2}, - [26] = {.lex_state = 78, .external_lex_state = 2}, - [27] = {.lex_state = 78, .external_lex_state = 2}, - [28] = {.lex_state = 78, .external_lex_state = 2}, - [29] = {.lex_state = 78, .external_lex_state = 2}, - [30] = {.lex_state = 78, .external_lex_state = 2}, - [31] = {.lex_state = 78, .external_lex_state = 2}, - [32] = {.lex_state = 78, .external_lex_state = 2}, - [33] = {.lex_state = 78, .external_lex_state = 2}, - [34] = {.lex_state = 78, .external_lex_state = 2}, - [35] = {.lex_state = 78, .external_lex_state = 2}, - [36] = {.lex_state = 78, .external_lex_state = 2}, - [37] = {.lex_state = 78, .external_lex_state = 2}, - [38] = {.lex_state = 78, .external_lex_state = 2}, - [39] = {.lex_state = 78, .external_lex_state = 2}, - [40] = {.lex_state = 78, .external_lex_state = 2}, - [41] = {.lex_state = 78, .external_lex_state = 2}, - [42] = {.lex_state = 78, .external_lex_state = 2}, - [43] = {.lex_state = 78, .external_lex_state = 2}, - [44] = {.lex_state = 78, .external_lex_state = 2}, - [45] = {.lex_state = 78, .external_lex_state = 2}, - [46] = {.lex_state = 78, .external_lex_state = 2}, - [47] = {.lex_state = 78, .external_lex_state = 2}, - [48] = {.lex_state = 78, .external_lex_state = 2}, - [49] = {.lex_state = 78, .external_lex_state = 2}, - [50] = {.lex_state = 78, .external_lex_state = 2}, - [51] = {.lex_state = 78, .external_lex_state = 2}, - [52] = {.lex_state = 78, .external_lex_state = 2}, - [53] = {.lex_state = 78, .external_lex_state = 2}, - [54] = {.lex_state = 78, .external_lex_state = 2}, - [55] = {.lex_state = 78, .external_lex_state = 2}, - [56] = {.lex_state = 78, .external_lex_state = 2}, - [57] = {.lex_state = 78, .external_lex_state = 2}, - [58] = {.lex_state = 78, .external_lex_state = 2}, - [59] = {.lex_state = 78, .external_lex_state = 2}, - [60] = {.lex_state = 78, .external_lex_state = 2}, - [61] = {.lex_state = 78, .external_lex_state = 2}, - [62] = {.lex_state = 78, .external_lex_state = 2}, - [63] = {.lex_state = 78, .external_lex_state = 2}, - [64] = {.lex_state = 78, .external_lex_state = 2}, - [65] = {.lex_state = 78, .external_lex_state = 2}, - [66] = {.lex_state = 78, .external_lex_state = 2}, - [67] = {.lex_state = 78, .external_lex_state = 2}, - [68] = {.lex_state = 78, .external_lex_state = 2}, - [69] = {.lex_state = 78, .external_lex_state = 2}, - [70] = {.lex_state = 78, .external_lex_state = 2}, - [71] = {.lex_state = 78, .external_lex_state = 2}, - [72] = {.lex_state = 78, .external_lex_state = 2}, - [73] = {.lex_state = 78, .external_lex_state = 2}, - [74] = {.lex_state = 78, .external_lex_state = 2}, - [75] = {.lex_state = 78, .external_lex_state = 2}, - [76] = {.lex_state = 78, .external_lex_state = 2}, - [77] = {.lex_state = 78, .external_lex_state = 2}, - [78] = {.lex_state = 78, .external_lex_state = 2}, - [79] = {.lex_state = 78, .external_lex_state = 2}, - [80] = {.lex_state = 78, .external_lex_state = 2}, - [81] = {.lex_state = 78, .external_lex_state = 2}, - [82] = {.lex_state = 78, .external_lex_state = 2}, - [83] = {.lex_state = 78, .external_lex_state = 2}, - [84] = {.lex_state = 78, .external_lex_state = 2}, - [85] = {.lex_state = 78, .external_lex_state = 2}, - [86] = {.lex_state = 78, .external_lex_state = 2}, - [87] = {.lex_state = 78, .external_lex_state = 2}, - [88] = {.lex_state = 78, .external_lex_state = 2}, - [89] = {.lex_state = 78, .external_lex_state = 2}, - [90] = {.lex_state = 78, .external_lex_state = 2}, - [91] = {.lex_state = 78, .external_lex_state = 2}, - [92] = {.lex_state = 78, .external_lex_state = 2}, - [93] = {.lex_state = 78, .external_lex_state = 2}, - [94] = {.lex_state = 78, .external_lex_state = 2}, - [95] = {.lex_state = 78, .external_lex_state = 2}, - [96] = {.lex_state = 78, .external_lex_state = 2}, - [97] = {.lex_state = 78, .external_lex_state = 2}, - [98] = {.lex_state = 78, .external_lex_state = 2}, - [99] = {.lex_state = 78, .external_lex_state = 2}, - [100] = {.lex_state = 78, .external_lex_state = 2}, - [101] = {.lex_state = 78, .external_lex_state = 2}, - [102] = {.lex_state = 78, .external_lex_state = 2}, - [103] = {.lex_state = 78, .external_lex_state = 2}, - [104] = {.lex_state = 78, .external_lex_state = 2}, - [105] = {.lex_state = 78, .external_lex_state = 2}, - [106] = {.lex_state = 78, .external_lex_state = 2}, - [107] = {.lex_state = 78, .external_lex_state = 2}, - [108] = {.lex_state = 78, .external_lex_state = 2}, - [109] = {.lex_state = 0, .external_lex_state = 2}, - [110] = {.lex_state = 0, .external_lex_state = 2}, - [111] = {.lex_state = 0, .external_lex_state = 2}, - [112] = {.lex_state = 0, .external_lex_state = 2}, - [113] = {.lex_state = 0, .external_lex_state = 2}, - [114] = {.lex_state = 0, .external_lex_state = 2}, - [115] = {.lex_state = 0, .external_lex_state = 2}, - [116] = {.lex_state = 0, .external_lex_state = 2}, - [117] = {.lex_state = 0, .external_lex_state = 2}, - [118] = {.lex_state = 0, .external_lex_state = 2}, - [119] = {.lex_state = 0, .external_lex_state = 2}, - [120] = {.lex_state = 0, .external_lex_state = 2}, - [121] = {.lex_state = 0, .external_lex_state = 2}, - [122] = {.lex_state = 0, .external_lex_state = 2}, - [123] = {.lex_state = 0, .external_lex_state = 2}, - [124] = {.lex_state = 0, .external_lex_state = 2}, - [125] = {.lex_state = 0, .external_lex_state = 2}, - [126] = {.lex_state = 0, .external_lex_state = 2}, - [127] = {.lex_state = 0, .external_lex_state = 2}, - [128] = {.lex_state = 0, .external_lex_state = 2}, - [129] = {.lex_state = 0, .external_lex_state = 2}, - [130] = {.lex_state = 0, .external_lex_state = 2}, - [131] = {.lex_state = 0, .external_lex_state = 2}, - [132] = {.lex_state = 0, .external_lex_state = 2}, - [133] = {.lex_state = 0, .external_lex_state = 2}, - [134] = {.lex_state = 0, .external_lex_state = 2}, - [135] = {.lex_state = 0, .external_lex_state = 2}, - [136] = {.lex_state = 0, .external_lex_state = 2}, - [137] = {.lex_state = 0, .external_lex_state = 2}, - [138] = {.lex_state = 0, .external_lex_state = 2}, - [139] = {.lex_state = 0, .external_lex_state = 2}, - [140] = {.lex_state = 1, .external_lex_state = 3}, - [141] = {.lex_state = 1, .external_lex_state = 3}, - [142] = {.lex_state = 1, .external_lex_state = 3}, - [143] = {.lex_state = 1, .external_lex_state = 3}, - [144] = {.lex_state = 1, .external_lex_state = 3}, - [145] = {.lex_state = 1, .external_lex_state = 3}, - [146] = {.lex_state = 1, .external_lex_state = 3}, - [147] = {.lex_state = 1, .external_lex_state = 3}, - [148] = {.lex_state = 1, .external_lex_state = 3}, - [149] = {.lex_state = 1, .external_lex_state = 3}, - [150] = {.lex_state = 1, .external_lex_state = 3}, - [151] = {.lex_state = 1, .external_lex_state = 3}, - [152] = {.lex_state = 1, .external_lex_state = 3}, - [153] = {.lex_state = 1, .external_lex_state = 3}, - [154] = {.lex_state = 1, .external_lex_state = 3}, - [155] = {.lex_state = 1, .external_lex_state = 3}, - [156] = {.lex_state = 1, .external_lex_state = 3}, - [157] = {.lex_state = 1, .external_lex_state = 3}, - [158] = {.lex_state = 1, .external_lex_state = 3}, - [159] = {.lex_state = 1, .external_lex_state = 3}, - [160] = {.lex_state = 1, .external_lex_state = 3}, - [161] = {.lex_state = 0, .external_lex_state = 2}, - [162] = {.lex_state = 1, .external_lex_state = 3}, - [163] = {.lex_state = 1, .external_lex_state = 3}, - [164] = {.lex_state = 1, .external_lex_state = 3}, - [165] = {.lex_state = 1, .external_lex_state = 3}, - [166] = {.lex_state = 1, .external_lex_state = 3}, - [167] = {.lex_state = 1, .external_lex_state = 3}, - [168] = {.lex_state = 1, .external_lex_state = 4}, - [169] = {.lex_state = 1, .external_lex_state = 4}, - [170] = {.lex_state = 1, .external_lex_state = 4}, - [171] = {.lex_state = 1, .external_lex_state = 4}, - [172] = {.lex_state = 1, .external_lex_state = 4}, - [173] = {.lex_state = 1, .external_lex_state = 4}, - [174] = {.lex_state = 1, .external_lex_state = 4}, - [175] = {.lex_state = 1, .external_lex_state = 4}, - [176] = {.lex_state = 1, .external_lex_state = 4}, - [177] = {.lex_state = 1, .external_lex_state = 4}, - [178] = {.lex_state = 1, .external_lex_state = 4}, - [179] = {.lex_state = 0, .external_lex_state = 2}, - [180] = {.lex_state = 1, .external_lex_state = 4}, - [181] = {.lex_state = 1, .external_lex_state = 4}, - [182] = {.lex_state = 1, .external_lex_state = 3}, - [183] = {.lex_state = 1, .external_lex_state = 4}, - [184] = {.lex_state = 1, .external_lex_state = 4}, - [185] = {.lex_state = 1, .external_lex_state = 4}, - [186] = {.lex_state = 1, .external_lex_state = 4}, - [187] = {.lex_state = 1, .external_lex_state = 4}, - [188] = {.lex_state = 1, .external_lex_state = 4}, - [189] = {.lex_state = 1, .external_lex_state = 4}, - [190] = {.lex_state = 1, .external_lex_state = 4}, - [191] = {.lex_state = 0, .external_lex_state = 2}, - [192] = {.lex_state = 0, .external_lex_state = 2}, - [193] = {.lex_state = 1, .external_lex_state = 4}, - [194] = {.lex_state = 1, .external_lex_state = 4}, - [195] = {.lex_state = 2, .external_lex_state = 2}, - [196] = {.lex_state = 1, .external_lex_state = 4}, - [197] = {.lex_state = 1, .external_lex_state = 4}, - [198] = {.lex_state = 1, .external_lex_state = 4}, - [199] = {.lex_state = 1, .external_lex_state = 4}, - [200] = {.lex_state = 1, .external_lex_state = 4}, - [201] = {.lex_state = 1, .external_lex_state = 4}, - [202] = {.lex_state = 1, .external_lex_state = 4}, - [203] = {.lex_state = 0, .external_lex_state = 2}, - [204] = {.lex_state = 2, .external_lex_state = 2}, - [205] = {.lex_state = 1, .external_lex_state = 5}, - [206] = {.lex_state = 2, .external_lex_state = 2}, - [207] = {.lex_state = 2, .external_lex_state = 2}, - [208] = {.lex_state = 1, .external_lex_state = 5}, - [209] = {.lex_state = 1, .external_lex_state = 5}, - [210] = {.lex_state = 1, .external_lex_state = 5}, - [211] = {.lex_state = 0, .external_lex_state = 2}, - [212] = {.lex_state = 2, .external_lex_state = 2}, - [213] = {.lex_state = 1, .external_lex_state = 5}, - [214] = {.lex_state = 1, .external_lex_state = 4}, - [215] = {.lex_state = 1, .external_lex_state = 5}, - [216] = {.lex_state = 1, .external_lex_state = 5}, - [217] = {.lex_state = 2, .external_lex_state = 2}, - [218] = {.lex_state = 2, .external_lex_state = 2}, - [219] = {.lex_state = 2, .external_lex_state = 2}, - [220] = {.lex_state = 2, .external_lex_state = 2}, - [221] = {.lex_state = 2, .external_lex_state = 2}, - [222] = {.lex_state = 1, .external_lex_state = 5}, - [223] = {.lex_state = 2, .external_lex_state = 2}, - [224] = {.lex_state = 2, .external_lex_state = 2}, - [225] = {.lex_state = 2, .external_lex_state = 2}, - [226] = {.lex_state = 1, .external_lex_state = 5}, - [227] = {.lex_state = 1, .external_lex_state = 5}, - [228] = {.lex_state = 2, .external_lex_state = 2}, - [229] = {.lex_state = 1, .external_lex_state = 5}, - [230] = {.lex_state = 2, .external_lex_state = 2}, - [231] = {.lex_state = 2, .external_lex_state = 2}, - [232] = {.lex_state = 1, .external_lex_state = 5}, - [233] = {.lex_state = 1, .external_lex_state = 5}, - [234] = {.lex_state = 1, .external_lex_state = 5}, - [235] = {.lex_state = 1, .external_lex_state = 5}, - [236] = {.lex_state = 1, .external_lex_state = 5}, - [237] = {.lex_state = 2, .external_lex_state = 2}, - [238] = {.lex_state = 1, .external_lex_state = 5}, - [239] = {.lex_state = 1, .external_lex_state = 5}, - [240] = {.lex_state = 2, .external_lex_state = 2}, - [241] = {.lex_state = 2, .external_lex_state = 2}, - [242] = {.lex_state = 2, .external_lex_state = 2}, - [243] = {.lex_state = 1, .external_lex_state = 5}, - [244] = {.lex_state = 1, .external_lex_state = 5}, - [245] = {.lex_state = 2, .external_lex_state = 2}, - [246] = {.lex_state = 1, .external_lex_state = 5}, - [247] = {.lex_state = 1, .external_lex_state = 2}, - [248] = {.lex_state = 3, .external_lex_state = 6}, - [249] = {.lex_state = 3, .external_lex_state = 6}, - [250] = {.lex_state = 3, .external_lex_state = 6}, - [251] = {.lex_state = 1, .external_lex_state = 2}, - [252] = {.lex_state = 1, .external_lex_state = 2}, - [253] = {.lex_state = 1, .external_lex_state = 2}, - [254] = {.lex_state = 1, .external_lex_state = 2}, - [255] = {.lex_state = 3, .external_lex_state = 6}, - [256] = {.lex_state = 3, .external_lex_state = 6}, - [257] = {.lex_state = 1, .external_lex_state = 5}, - [258] = {.lex_state = 1, .external_lex_state = 5}, - [259] = {.lex_state = 1, .external_lex_state = 2}, - [260] = {.lex_state = 1, .external_lex_state = 2}, - [261] = {.lex_state = 1, .external_lex_state = 2}, - [262] = {.lex_state = 1, .external_lex_state = 5}, - [263] = {.lex_state = 3, .external_lex_state = 6}, - [264] = {.lex_state = 1, .external_lex_state = 5}, - [265] = {.lex_state = 1, .external_lex_state = 5}, - [266] = {.lex_state = 78, .external_lex_state = 2}, - [267] = {.lex_state = 1, .external_lex_state = 2}, - [268] = {.lex_state = 78, .external_lex_state = 2}, - [269] = {.lex_state = 3, .external_lex_state = 6}, - [270] = {.lex_state = 1, .external_lex_state = 2}, - [271] = {.lex_state = 1, .external_lex_state = 2}, - [272] = {.lex_state = 1, .external_lex_state = 2}, - [273] = {.lex_state = 78, .external_lex_state = 2}, - [274] = {.lex_state = 1, .external_lex_state = 2}, - [275] = {.lex_state = 1, .external_lex_state = 5}, - [276] = {.lex_state = 78, .external_lex_state = 2}, - [277] = {.lex_state = 1, .external_lex_state = 2}, - [278] = {.lex_state = 1, .external_lex_state = 2}, - [279] = {.lex_state = 3, .external_lex_state = 6}, - [280] = {.lex_state = 3, .external_lex_state = 6}, - [281] = {.lex_state = 1, .external_lex_state = 2}, - [282] = {.lex_state = 78, .external_lex_state = 2}, - [283] = {.lex_state = 1, .external_lex_state = 2}, - [284] = {.lex_state = 1, .external_lex_state = 2}, - [285] = {.lex_state = 1, .external_lex_state = 2}, - [286] = {.lex_state = 1, .external_lex_state = 2}, - [287] = {.lex_state = 1, .external_lex_state = 2}, - [288] = {.lex_state = 0, .external_lex_state = 2}, - [289] = {.lex_state = 78, .external_lex_state = 5}, - [290] = {.lex_state = 1, .external_lex_state = 2}, - [291] = {.lex_state = 1, .external_lex_state = 4}, - [292] = {.lex_state = 3, .external_lex_state = 6}, - [293] = {.lex_state = 1, .external_lex_state = 2}, - [294] = {.lex_state = 0, .external_lex_state = 2}, - [295] = {.lex_state = 1, .external_lex_state = 4}, - [296] = {.lex_state = 3, .external_lex_state = 6}, - [297] = {.lex_state = 1, .external_lex_state = 2}, - [298] = {.lex_state = 78, .external_lex_state = 2}, - [299] = {.lex_state = 1, .external_lex_state = 4}, - [300] = {.lex_state = 2, .external_lex_state = 7}, - [301] = {.lex_state = 3, .external_lex_state = 6}, - [302] = {.lex_state = 0, .external_lex_state = 2}, - [303] = {.lex_state = 1, .external_lex_state = 2}, - [304] = {.lex_state = 1, .external_lex_state = 2}, - [305] = {.lex_state = 1, .external_lex_state = 2}, - [306] = {.lex_state = 1, .external_lex_state = 2}, - [307] = {.lex_state = 78, .external_lex_state = 2}, - [308] = {.lex_state = 1, .external_lex_state = 2}, - [309] = {.lex_state = 3, .external_lex_state = 6}, - [310] = {.lex_state = 1, .external_lex_state = 2}, - [311] = {.lex_state = 2, .external_lex_state = 7}, - [312] = {.lex_state = 2, .external_lex_state = 7}, - [313] = {.lex_state = 2, .external_lex_state = 7}, - [314] = {.lex_state = 2, .external_lex_state = 7}, - [315] = {.lex_state = 3, .external_lex_state = 2}, - [316] = {.lex_state = 2, .external_lex_state = 7}, - [317] = {.lex_state = 1, .external_lex_state = 2}, - [318] = {.lex_state = 2, .external_lex_state = 7}, - [319] = {.lex_state = 2, .external_lex_state = 7}, - [320] = {.lex_state = 2, .external_lex_state = 7}, - [321] = {.lex_state = 2, .external_lex_state = 7}, - [322] = {.lex_state = 3, .external_lex_state = 2}, - [323] = {.lex_state = 2, .external_lex_state = 7}, - [324] = {.lex_state = 2, .external_lex_state = 7}, - [325] = {.lex_state = 3, .external_lex_state = 2}, - [326] = {.lex_state = 3, .external_lex_state = 2}, - [327] = {.lex_state = 0, .external_lex_state = 2}, - [328] = {.lex_state = 2, .external_lex_state = 7}, - [329] = {.lex_state = 2, .external_lex_state = 7}, - [330] = {.lex_state = 2, .external_lex_state = 7}, - [331] = {.lex_state = 2, .external_lex_state = 7}, - [332] = {.lex_state = 2, .external_lex_state = 7}, - [333] = {.lex_state = 2, .external_lex_state = 7}, - [334] = {.lex_state = 3, .external_lex_state = 2}, - [335] = {.lex_state = 3, .external_lex_state = 2}, - [336] = {.lex_state = 2, .external_lex_state = 7}, - [337] = {.lex_state = 2, .external_lex_state = 7}, - [338] = {.lex_state = 0, .external_lex_state = 2}, - [339] = {.lex_state = 2, .external_lex_state = 7}, - [340] = {.lex_state = 3, .external_lex_state = 2}, - [341] = {.lex_state = 0, .external_lex_state = 2}, - [342] = {.lex_state = 0, .external_lex_state = 2}, - [343] = {.lex_state = 0, .external_lex_state = 2}, - [344] = {.lex_state = 0, .external_lex_state = 2}, - [345] = {.lex_state = 0, .external_lex_state = 2}, - [346] = {.lex_state = 78, .external_lex_state = 2}, - [347] = {.lex_state = 0, .external_lex_state = 2}, - [348] = {.lex_state = 0, .external_lex_state = 2}, - [349] = {.lex_state = 78, .external_lex_state = 7}, - [350] = {.lex_state = 78, .external_lex_state = 7}, - [351] = {.lex_state = 78, .external_lex_state = 7}, - [352] = {.lex_state = 78, .external_lex_state = 7}, - [353] = {.lex_state = 78, .external_lex_state = 7}, - [354] = {.lex_state = 78, .external_lex_state = 7}, - [355] = {.lex_state = 0, .external_lex_state = 2}, - [356] = {.lex_state = 0, .external_lex_state = 2}, - [357] = {.lex_state = 0, .external_lex_state = 2}, - [358] = {.lex_state = 0, .external_lex_state = 2}, - [359] = {.lex_state = 0, .external_lex_state = 2}, - [360] = {.lex_state = 78, .external_lex_state = 2}, - [361] = {.lex_state = 78, .external_lex_state = 2}, - [362] = {.lex_state = 78, .external_lex_state = 2}, - [363] = {.lex_state = 78, .external_lex_state = 2}, - [364] = {.lex_state = 78, .external_lex_state = 7}, - [365] = {.lex_state = 78, .external_lex_state = 2}, - [366] = {.lex_state = 78, .external_lex_state = 2}, - [367] = {.lex_state = 0, .external_lex_state = 2}, - [368] = {.lex_state = 78, .external_lex_state = 2}, - [369] = {.lex_state = 78, .external_lex_state = 2}, - [370] = {.lex_state = 0, .external_lex_state = 2}, - [371] = {.lex_state = 0, .external_lex_state = 2}, - [372] = {.lex_state = 78, .external_lex_state = 2}, - [373] = {.lex_state = 78, .external_lex_state = 7}, - [374] = {.lex_state = 78, .external_lex_state = 2}, - [375] = {.lex_state = 0, .external_lex_state = 2}, - [376] = {.lex_state = 0, .external_lex_state = 2}, - [377] = {.lex_state = 0, .external_lex_state = 2}, - [378] = {.lex_state = 0, .external_lex_state = 2}, - [379] = {.lex_state = 78, .external_lex_state = 2}, - [380] = {.lex_state = 78, .external_lex_state = 2}, - [381] = {.lex_state = 78, .external_lex_state = 2}, - [382] = {.lex_state = 0, .external_lex_state = 2}, - [383] = {.lex_state = 78, .external_lex_state = 2}, - [384] = {.lex_state = 78, .external_lex_state = 2}, - [385] = {.lex_state = 78, .external_lex_state = 2}, - [386] = {.lex_state = 78, .external_lex_state = 2}, - [387] = {.lex_state = 78, .external_lex_state = 2}, - [388] = {.lex_state = 78, .external_lex_state = 2}, - [389] = {.lex_state = 78, .external_lex_state = 7}, - [390] = {.lex_state = 0, .external_lex_state = 2}, - [391] = {.lex_state = 0, .external_lex_state = 2}, - [392] = {.lex_state = 0, .external_lex_state = 2}, - [393] = {.lex_state = 0, .external_lex_state = 2}, - [394] = {.lex_state = 0, .external_lex_state = 2}, - [395] = {.lex_state = 0, .external_lex_state = 2}, - [396] = {.lex_state = 0, .external_lex_state = 2}, - [397] = {.lex_state = 78, .external_lex_state = 7}, - [398] = {.lex_state = 0, .external_lex_state = 2}, - [399] = {.lex_state = 0, .external_lex_state = 2}, - [400] = {.lex_state = 0, .external_lex_state = 2}, - [401] = {.lex_state = 0, .external_lex_state = 8}, - [402] = {.lex_state = 0, .external_lex_state = 2}, - [403] = {.lex_state = 0, .external_lex_state = 2}, - [404] = {.lex_state = 0, .external_lex_state = 2}, - [405] = {.lex_state = 0, .external_lex_state = 2}, - [406] = {.lex_state = 0, .external_lex_state = 2}, - [407] = {.lex_state = 0, .external_lex_state = 2}, - [408] = {.lex_state = 0, .external_lex_state = 2}, - [409] = {.lex_state = 0, .external_lex_state = 2}, - [410] = {.lex_state = 0, .external_lex_state = 2}, - [411] = {.lex_state = 78, .external_lex_state = 7}, - [412] = {.lex_state = 0, .external_lex_state = 2}, - [413] = {.lex_state = 1, .external_lex_state = 2}, - [414] = {.lex_state = 0, .external_lex_state = 2}, - [415] = {.lex_state = 0, .external_lex_state = 2}, - [416] = {.lex_state = 0, .external_lex_state = 2}, - [417] = {.lex_state = 78, .external_lex_state = 2}, - [418] = {.lex_state = 0, .external_lex_state = 2}, - [419] = {.lex_state = 0, .external_lex_state = 2}, - [420] = {.lex_state = 0, .external_lex_state = 2}, - [421] = {.lex_state = 0, .external_lex_state = 2}, - [422] = {.lex_state = 0, .external_lex_state = 2}, - [423] = {.lex_state = 0, .external_lex_state = 2}, - [424] = {.lex_state = 0, .external_lex_state = 2}, - [425] = {.lex_state = 0, .external_lex_state = 2}, - [426] = {.lex_state = 0, .external_lex_state = 2}, - [427] = {.lex_state = 0, .external_lex_state = 2}, - [428] = {.lex_state = 1, .external_lex_state = 2}, - [429] = {.lex_state = 0, .external_lex_state = 2}, - [430] = {.lex_state = 0, .external_lex_state = 2}, - [431] = {.lex_state = 0, .external_lex_state = 2}, - [432] = {.lex_state = 0, .external_lex_state = 2}, - [433] = {.lex_state = 0, .external_lex_state = 2}, - [434] = {.lex_state = 1, .external_lex_state = 2}, - [435] = {.lex_state = 0, .external_lex_state = 2}, - [436] = {.lex_state = 0, .external_lex_state = 2}, - [437] = {.lex_state = 0, .external_lex_state = 2}, - [438] = {.lex_state = 0, .external_lex_state = 2}, - [439] = {.lex_state = 0, .external_lex_state = 2}, - [440] = {.lex_state = 0, .external_lex_state = 2}, - [441] = {.lex_state = 0, .external_lex_state = 2}, - [442] = {.lex_state = 0, .external_lex_state = 2}, - [443] = {.lex_state = 0, .external_lex_state = 2}, - [444] = {.lex_state = 0, .external_lex_state = 2}, - [445] = {.lex_state = 0, .external_lex_state = 2}, - [446] = {.lex_state = 0, .external_lex_state = 2}, - [447] = {.lex_state = 0, .external_lex_state = 2}, - [448] = {.lex_state = 0, .external_lex_state = 2}, - [449] = {.lex_state = 78, .external_lex_state = 7}, - [450] = {.lex_state = 78, .external_lex_state = 7}, - [451] = {.lex_state = 0, .external_lex_state = 2}, - [452] = {.lex_state = 0, .external_lex_state = 2}, - [453] = {.lex_state = 0, .external_lex_state = 7}, - [454] = {.lex_state = 0, .external_lex_state = 7}, - [455] = {.lex_state = 0, .external_lex_state = 7}, - [456] = {.lex_state = 0, .external_lex_state = 7}, - [457] = {.lex_state = 0, .external_lex_state = 2}, - [458] = {.lex_state = 0, .external_lex_state = 2}, - [459] = {.lex_state = 0, .external_lex_state = 7}, - [460] = {.lex_state = 0, .external_lex_state = 7}, - [461] = {.lex_state = 0, .external_lex_state = 7}, - [462] = {.lex_state = 0, .external_lex_state = 7}, - [463] = {.lex_state = 0, .external_lex_state = 2}, - [464] = {.lex_state = 78, .external_lex_state = 2}, - [465] = {.lex_state = 0, .external_lex_state = 2}, - [466] = {.lex_state = 0, .external_lex_state = 7}, - [467] = {.lex_state = 0, .external_lex_state = 2}, - [468] = {.lex_state = 78, .external_lex_state = 2}, - [469] = {.lex_state = 0, .external_lex_state = 2}, - [470] = {.lex_state = 0, .external_lex_state = 2}, - [471] = {.lex_state = 0, .external_lex_state = 2}, - [472] = {.lex_state = 0, .external_lex_state = 2}, - [473] = {.lex_state = 0, .external_lex_state = 2}, - [474] = {.lex_state = 0, .external_lex_state = 2}, - [475] = {.lex_state = 0, .external_lex_state = 7}, - [476] = {.lex_state = 0, .external_lex_state = 2}, - [477] = {.lex_state = 0, .external_lex_state = 2}, - [478] = {.lex_state = 0, .external_lex_state = 2}, - [479] = {.lex_state = 0, .external_lex_state = 2}, - [480] = {.lex_state = 0, .external_lex_state = 2}, - [481] = {.lex_state = 0, .external_lex_state = 2}, - [482] = {.lex_state = 0, .external_lex_state = 2}, - [483] = {.lex_state = 0, .external_lex_state = 2}, - [484] = {.lex_state = 0, .external_lex_state = 2}, - [485] = {.lex_state = 0, .external_lex_state = 7}, - [486] = {.lex_state = 0, .external_lex_state = 2}, - [487] = {.lex_state = 0, .external_lex_state = 2}, - [488] = {.lex_state = 0, .external_lex_state = 2}, - [489] = {.lex_state = 0, .external_lex_state = 7}, - [490] = {.lex_state = 0, .external_lex_state = 2}, - [491] = {.lex_state = 0, .external_lex_state = 2}, - [492] = {.lex_state = 0, .external_lex_state = 7}, - [493] = {.lex_state = 78, .external_lex_state = 2}, - [494] = {.lex_state = 0, .external_lex_state = 2}, - [495] = {.lex_state = 0, .external_lex_state = 2}, - [496] = {.lex_state = 0, .external_lex_state = 2}, - [497] = {.lex_state = 0, .external_lex_state = 2}, - [498] = {.lex_state = 78, .external_lex_state = 2}, - [499] = {.lex_state = 0, .external_lex_state = 7}, - [500] = {.lex_state = 0, .external_lex_state = 2}, - [501] = {.lex_state = 0, .external_lex_state = 8}, - [502] = {.lex_state = 78, .external_lex_state = 7}, - [503] = {.lex_state = 0, .external_lex_state = 7}, - [504] = {.lex_state = 0, .external_lex_state = 2}, - [505] = {.lex_state = 0, .external_lex_state = 8}, - [506] = {.lex_state = 3, .external_lex_state = 2}, - [507] = {.lex_state = 0, .external_lex_state = 2}, - [508] = {.lex_state = 0, .external_lex_state = 2}, - [509] = {.lex_state = 0, .external_lex_state = 7}, - [510] = {.lex_state = 0, .external_lex_state = 2}, - [511] = {.lex_state = 78, .external_lex_state = 2}, - [512] = {.lex_state = 78, .external_lex_state = 2}, - [513] = {.lex_state = 0, .external_lex_state = 7}, - [514] = {.lex_state = 3, .external_lex_state = 2}, - [515] = {.lex_state = 0, .external_lex_state = 2}, - [516] = {.lex_state = 0, .external_lex_state = 2}, - [517] = {.lex_state = 78, .external_lex_state = 2}, - [518] = {.lex_state = 0, .external_lex_state = 7}, - [519] = {.lex_state = 0, .external_lex_state = 2}, - [520] = {.lex_state = 0, .external_lex_state = 2}, - [521] = {.lex_state = 78, .external_lex_state = 2}, - [522] = {.lex_state = 0, .external_lex_state = 8}, - [523] = {.lex_state = 0, .external_lex_state = 2}, - [524] = {.lex_state = 0, .external_lex_state = 2}, - [525] = {.lex_state = 0, .external_lex_state = 7}, - [526] = {.lex_state = 0, .external_lex_state = 7}, - [527] = {.lex_state = 0, .external_lex_state = 2}, - [528] = {.lex_state = 0, .external_lex_state = 7}, - [529] = {.lex_state = 0, .external_lex_state = 2}, - [530] = {.lex_state = 0, .external_lex_state = 2}, - [531] = {.lex_state = 0, .external_lex_state = 8}, - [532] = {.lex_state = 0, .external_lex_state = 2}, - [533] = {.lex_state = 0, .external_lex_state = 2}, - [534] = {.lex_state = 0, .external_lex_state = 2}, - [535] = {.lex_state = 0, .external_lex_state = 2}, - [536] = {.lex_state = 78, .external_lex_state = 2}, - [537] = {.lex_state = 0, .external_lex_state = 2}, - [538] = {.lex_state = 0, .external_lex_state = 2}, - [539] = {.lex_state = 0, .external_lex_state = 2}, - [540] = {.lex_state = 0, .external_lex_state = 2}, - [541] = {.lex_state = 0, .external_lex_state = 2}, - [542] = {.lex_state = 78, .external_lex_state = 2}, - [543] = {.lex_state = 0, .external_lex_state = 2}, - [544] = {.lex_state = 0, .external_lex_state = 2}, - [545] = {.lex_state = 0, .external_lex_state = 2}, - [546] = {.lex_state = 0, .external_lex_state = 2}, - [547] = {.lex_state = 0, .external_lex_state = 9}, - [548] = {.lex_state = 0, .external_lex_state = 2}, - [549] = {.lex_state = 0, .external_lex_state = 2}, - [550] = {.lex_state = 0, .external_lex_state = 2}, - [551] = {.lex_state = 0, .external_lex_state = 2}, - [552] = {.lex_state = 0, .external_lex_state = 2}, - [553] = {.lex_state = 0, .external_lex_state = 2}, - [554] = {.lex_state = 0, .external_lex_state = 2}, - [555] = {.lex_state = 0, .external_lex_state = 2}, - [556] = {.lex_state = 0, .external_lex_state = 2}, - [557] = {.lex_state = 0, .external_lex_state = 2}, - [558] = {.lex_state = 0, .external_lex_state = 8}, - [559] = {.lex_state = 0, .external_lex_state = 8}, - [560] = {.lex_state = 0, .external_lex_state = 2}, - [561] = {.lex_state = 0, .external_lex_state = 8}, - [562] = {.lex_state = 0, .external_lex_state = 8}, - [563] = {.lex_state = 0, .external_lex_state = 2}, - [564] = {.lex_state = 0, .external_lex_state = 2}, - [565] = {.lex_state = 78, .external_lex_state = 2}, - [566] = {.lex_state = 78, .external_lex_state = 2}, - [567] = {.lex_state = 78, .external_lex_state = 2}, - [568] = {.lex_state = 0, .external_lex_state = 2}, - [569] = {.lex_state = 0, .external_lex_state = 2}, - [570] = {.lex_state = 0, .external_lex_state = 2}, - [571] = {.lex_state = 0, .external_lex_state = 2}, - [572] = {.lex_state = 0, .external_lex_state = 2}, - [573] = {.lex_state = 0, .external_lex_state = 2}, - [574] = {.lex_state = 0, .external_lex_state = 7}, - [575] = {.lex_state = 0, .external_lex_state = 2}, - [576] = {.lex_state = 0, .external_lex_state = 2}, - [577] = {.lex_state = 0, .external_lex_state = 2}, - [578] = {.lex_state = 0, .external_lex_state = 7}, - [579] = {.lex_state = 0, .external_lex_state = 7}, - [580] = {.lex_state = 0, .external_lex_state = 7}, - [581] = {.lex_state = 0, .external_lex_state = 2}, - [582] = {.lex_state = 0, .external_lex_state = 7}, - [583] = {.lex_state = 0, .external_lex_state = 2}, - [584] = {.lex_state = 0, .external_lex_state = 7}, - [585] = {.lex_state = 0, .external_lex_state = 7}, - [586] = {.lex_state = 0, .external_lex_state = 2}, - [587] = {.lex_state = 0, .external_lex_state = 2}, - [588] = {.lex_state = 0, .external_lex_state = 2}, - [589] = {.lex_state = 0, .external_lex_state = 2}, - [590] = {.lex_state = 0, .external_lex_state = 2}, - [591] = {.lex_state = 0, .external_lex_state = 2}, - [592] = {.lex_state = 78, .external_lex_state = 2}, - [593] = {.lex_state = 78, .external_lex_state = 2}, - [594] = {.lex_state = 78, .external_lex_state = 2}, - [595] = {.lex_state = 0, .external_lex_state = 2}, - [596] = {.lex_state = 0, .external_lex_state = 2}, - [597] = {.lex_state = 0, .external_lex_state = 2}, - [598] = {.lex_state = 0, .external_lex_state = 2}, - [599] = {.lex_state = 0, .external_lex_state = 2}, - [600] = {.lex_state = 0, .external_lex_state = 2}, - [601] = {.lex_state = 0, .external_lex_state = 2}, - [602] = {.lex_state = 0, .external_lex_state = 2}, - [603] = {.lex_state = 0, .external_lex_state = 2}, - [604] = {.lex_state = 0, .external_lex_state = 2}, - [605] = {.lex_state = 0, .external_lex_state = 2}, - [606] = {.lex_state = 0, .external_lex_state = 2}, - [607] = {.lex_state = 0, .external_lex_state = 7}, - [608] = {.lex_state = 0, .external_lex_state = 9}, - [609] = {.lex_state = 0, .external_lex_state = 2}, - [610] = {.lex_state = 0, .external_lex_state = 2}, - [611] = {.lex_state = 0, .external_lex_state = 7}, - [612] = {.lex_state = 0, .external_lex_state = 7}, - [613] = {.lex_state = 0, .external_lex_state = 2}, - [614] = {.lex_state = 0, .external_lex_state = 2}, - [615] = {.lex_state = 0, .external_lex_state = 9}, - [616] = {.lex_state = 0, .external_lex_state = 2}, - [617] = {.lex_state = 0, .external_lex_state = 2}, - [618] = {.lex_state = 0, .external_lex_state = 2}, - [619] = {.lex_state = 0, .external_lex_state = 9}, - [620] = {.lex_state = 0, .external_lex_state = 2}, - [621] = {.lex_state = 0, .external_lex_state = 9}, - [622] = {.lex_state = 0, .external_lex_state = 9}, - [623] = {.lex_state = 0, .external_lex_state = 9}, - [624] = {.lex_state = 0, .external_lex_state = 9}, - [625] = {.lex_state = 0, .external_lex_state = 9}, - [626] = {.lex_state = 0, .external_lex_state = 9}, - [627] = {.lex_state = 0, .external_lex_state = 9}, - [628] = {.lex_state = 0, .external_lex_state = 8}, - [629] = {.lex_state = 0, .external_lex_state = 7}, - [630] = {.lex_state = 0, .external_lex_state = 9}, - [631] = {.lex_state = 0, .external_lex_state = 2}, - [632] = {.lex_state = 78, .external_lex_state = 2}, - [633] = {.lex_state = 0, .external_lex_state = 2}, - [634] = {.lex_state = 78, .external_lex_state = 2}, - [635] = {.lex_state = 0, .external_lex_state = 2}, - [636] = {.lex_state = 0, .external_lex_state = 7}, - [637] = {.lex_state = 0, .external_lex_state = 2}, - [638] = {.lex_state = 0, .external_lex_state = 2}, - [639] = {.lex_state = 0, .external_lex_state = 7}, - [640] = {.lex_state = 0, .external_lex_state = 2}, - [641] = {.lex_state = 0, .external_lex_state = 2}, - [642] = {.lex_state = 0, .external_lex_state = 7}, - [643] = {.lex_state = 0, .external_lex_state = 2}, - [644] = {.lex_state = 0, .external_lex_state = 2}, - [645] = {.lex_state = 0, .external_lex_state = 7}, - [646] = {.lex_state = 0, .external_lex_state = 2}, - [647] = {.lex_state = 0, .external_lex_state = 8}, - [648] = {.lex_state = 0, .external_lex_state = 8}, - [649] = {.lex_state = 0, .external_lex_state = 9}, - [650] = {.lex_state = 0, .external_lex_state = 2}, - [651] = {.lex_state = 0, .external_lex_state = 2}, - [652] = {.lex_state = 0, .external_lex_state = 2}, - [653] = {.lex_state = 0, .external_lex_state = 2}, - [654] = {.lex_state = 0, .external_lex_state = 2}, - [655] = {.lex_state = 0, .external_lex_state = 2}, - [656] = {.lex_state = 0, .external_lex_state = 9}, - [657] = {.lex_state = 0, .external_lex_state = 9}, - [658] = {.lex_state = 0, .external_lex_state = 9}, - [659] = {.lex_state = 0, .external_lex_state = 8}, - [660] = {.lex_state = 0, .external_lex_state = 2}, - [661] = {.lex_state = 0, .external_lex_state = 7}, - [662] = {.lex_state = 0, .external_lex_state = 8}, - [663] = {.lex_state = 0, .external_lex_state = 8}, - [664] = {.lex_state = 0, .external_lex_state = 8}, - [665] = {.lex_state = 0, .external_lex_state = 8}, - [666] = {.lex_state = 0, .external_lex_state = 9}, - [667] = {.lex_state = 0, .external_lex_state = 8}, - [668] = {.lex_state = 0, .external_lex_state = 8}, - [669] = {.lex_state = 0, .external_lex_state = 9}, - [670] = {.lex_state = 0, .external_lex_state = 9}, - [671] = {.lex_state = 0, .external_lex_state = 9}, - [672] = {.lex_state = 0, .external_lex_state = 9}, - [673] = {.lex_state = 0, .external_lex_state = 9}, - [674] = {.lex_state = 0, .external_lex_state = 9}, -}; - -enum { - ts_external_token__block_comment = 0, - ts_external_token__disambiguate_template = 1, - ts_external_token__template_args_start = 2, - ts_external_token__template_args_end = 3, - ts_external_token__less_than = 4, - ts_external_token__less_than_equal = 5, - ts_external_token__shift_left = 6, - ts_external_token__shift_left_assign = 7, - ts_external_token__greater_than = 8, - ts_external_token__greater_than_equal = 9, - ts_external_token__shift_right = 10, - ts_external_token__shift_right_assign = 11, - ts_external_token__error_sentinel = 12, -}; - -static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { - [ts_external_token__block_comment] = sym__block_comment, - [ts_external_token__disambiguate_template] = sym__disambiguate_template, - [ts_external_token__template_args_start] = sym__template_args_start, - [ts_external_token__template_args_end] = sym__template_args_end, - [ts_external_token__less_than] = sym__less_than, - [ts_external_token__less_than_equal] = sym__less_than_equal, - [ts_external_token__shift_left] = sym__shift_left, - [ts_external_token__shift_left_assign] = sym__shift_left_assign, - [ts_external_token__greater_than] = sym__greater_than, - [ts_external_token__greater_than_equal] = sym__greater_than_equal, - [ts_external_token__shift_right] = sym__shift_right, - [ts_external_token__shift_right_assign] = sym__shift_right_assign, - [ts_external_token__error_sentinel] = sym__error_sentinel, -}; - -static const bool ts_external_scanner_states[10][EXTERNAL_TOKEN_COUNT] = { - [1] = { - [ts_external_token__block_comment] = true, - [ts_external_token__disambiguate_template] = true, - [ts_external_token__template_args_start] = true, - [ts_external_token__template_args_end] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__shift_left_assign] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - [ts_external_token__shift_right] = true, - [ts_external_token__shift_right_assign] = true, - [ts_external_token__error_sentinel] = true, - }, - [2] = { - [ts_external_token__block_comment] = true, - }, - [3] = { - [ts_external_token__block_comment] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - [ts_external_token__shift_right] = true, - }, - [4] = { - [ts_external_token__block_comment] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - }, - [5] = { - [ts_external_token__block_comment] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__shift_right] = true, - }, - [6] = { - [ts_external_token__block_comment] = true, - [ts_external_token__shift_left_assign] = true, - [ts_external_token__shift_right_assign] = true, - }, - [7] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_end] = true, - }, - [8] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_start] = true, - }, - [9] = { - [ts_external_token__block_comment] = true, - [ts_external_token__disambiguate_template] = true, - }, -}; - -static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { - [0] = { - [ts_builtin_sym_end] = ACTIONS(1), - [sym_ident_pattern_token] = ACTIONS(1), - [anon_sym_SEMI] = ACTIONS(1), - [anon_sym_true] = ACTIONS(1), - [anon_sym_false] = ACTIONS(1), - [aux_sym_decimal_int_literal_token1] = ACTIONS(1), - [aux_sym_decimal_int_literal_token2] = ACTIONS(1), - [sym_hex_int_literal] = ACTIONS(1), - [aux_sym_decimal_float_literal_token1] = ACTIONS(1), - [aux_sym_decimal_float_literal_token2] = ACTIONS(1), - [aux_sym_decimal_float_literal_token3] = ACTIONS(1), - [aux_sym_decimal_float_literal_token4] = ACTIONS(1), - [aux_sym_decimal_float_literal_token5] = ACTIONS(1), - [aux_sym_hex_float_literal_token1] = ACTIONS(1), - [aux_sym_hex_float_literal_token2] = ACTIONS(1), - [aux_sym_hex_float_literal_token3] = ACTIONS(1), - [anon_sym_AT] = ACTIONS(1), - [anon_sym_align] = ACTIONS(1), - [anon_sym_LPAREN] = ACTIONS(1), - [anon_sym_binding] = ACTIONS(1), - [anon_sym_builtin] = ACTIONS(1), - [anon_sym_const] = ACTIONS(1), - [anon_sym_group] = ACTIONS(1), - [anon_sym_id] = ACTIONS(1), - [anon_sym_interpolate] = ACTIONS(1), - [anon_sym_COMMA] = ACTIONS(1), - [anon_sym_invariant] = ACTIONS(1), - [anon_sym_location] = ACTIONS(1), - [anon_sym_size] = ACTIONS(1), - [anon_sym_workgroup_size] = ACTIONS(1), - [anon_sym_vertex] = ACTIONS(1), - [anon_sym_fragment] = ACTIONS(1), - [anon_sym_compute] = ACTIONS(1), - [anon_sym_RPAREN] = ACTIONS(1), - [anon_sym_array] = ACTIONS(1), - [anon_sym_struct] = ACTIONS(1), - [anon_sym_LBRACE] = ACTIONS(1), - [anon_sym_RBRACE] = ACTIONS(1), - [anon_sym_COLON] = ACTIONS(1), - [anon_sym_sampler] = ACTIONS(1), - [anon_sym_sampler_comparison] = ACTIONS(1), - [anon_sym_texture_1d] = ACTIONS(1), - [anon_sym_texture_2d] = ACTIONS(1), - [anon_sym_texture_2d_array] = ACTIONS(1), - [anon_sym_texture_3d] = ACTIONS(1), - [anon_sym_texture_cube] = ACTIONS(1), - [anon_sym_texture_cube_array] = ACTIONS(1), - [sym_multisampled_texture_type] = ACTIONS(1), - [anon_sym_texture_storage_1d] = ACTIONS(1), - [anon_sym_texture_storage_2d] = ACTIONS(1), - [anon_sym_texture_storage_2d_array] = ACTIONS(1), - [anon_sym_texture_storage_3d] = ACTIONS(1), - [anon_sym_texture_depth_2d] = ACTIONS(1), - [anon_sym_texture_depth_2d_array] = ACTIONS(1), - [anon_sym_texture_depth_cube] = ACTIONS(1), - [anon_sym_texture_depth_cube_array] = ACTIONS(1), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(1), - [anon_sym_alias] = ACTIONS(1), - [anon_sym_EQ] = ACTIONS(1), - [anon_sym_bool] = ACTIONS(1), - [anon_sym_f32] = ACTIONS(1), - [anon_sym_f16] = ACTIONS(1), - [anon_sym_i32] = ACTIONS(1), - [anon_sym_u32] = ACTIONS(1), - [anon_sym_ptr] = ACTIONS(1), - [anon_sym_atomic] = ACTIONS(1), - [anon_sym_vec2] = ACTIONS(1), - [anon_sym_vec3] = ACTIONS(1), - [anon_sym_vec4] = ACTIONS(1), - [anon_sym_mat2x2] = ACTIONS(1), - [anon_sym_mat2x3] = ACTIONS(1), - [anon_sym_mat2x4] = ACTIONS(1), - [anon_sym_mat3x2] = ACTIONS(1), - [anon_sym_mat3x3] = ACTIONS(1), - [anon_sym_mat3x4] = ACTIONS(1), - [anon_sym_mat4x2] = ACTIONS(1), - [anon_sym_mat4x3] = ACTIONS(1), - [anon_sym_mat4x4] = ACTIONS(1), - [anon_sym_let] = ACTIONS(1), - [anon_sym_var] = ACTIONS(1), - [anon_sym_override] = ACTIONS(1), - [anon_sym_bitcast] = ACTIONS(1), - [anon_sym_LBRACK] = ACTIONS(1), - [anon_sym_RBRACK] = ACTIONS(1), - [anon_sym_DOT] = ACTIONS(1), - [anon_sym_DASH] = ACTIONS(1), - [anon_sym_BANG] = ACTIONS(1), - [anon_sym_TILDE] = ACTIONS(1), - [anon_sym_STAR] = ACTIONS(1), - [anon_sym_AMP] = ACTIONS(1), - [anon_sym_SLASH] = ACTIONS(1), - [anon_sym_PERCENT] = ACTIONS(1), - [anon_sym_PLUS] = ACTIONS(1), - [anon_sym_EQ_EQ] = ACTIONS(1), - [anon_sym_BANG_EQ] = ACTIONS(1), - [anon_sym_AMP_AMP] = ACTIONS(1), - [anon_sym_PIPE_PIPE] = ACTIONS(1), - [anon_sym_PIPE] = ACTIONS(1), - [anon_sym_CARET] = ACTIONS(1), - [anon_sym__] = ACTIONS(1), - [anon_sym_PLUS_EQ] = ACTIONS(1), - [anon_sym_DASH_EQ] = ACTIONS(1), - [anon_sym_STAR_EQ] = ACTIONS(1), - [anon_sym_SLASH_EQ] = ACTIONS(1), - [anon_sym_PERCENT_EQ] = ACTIONS(1), - [anon_sym_AMP_EQ] = ACTIONS(1), - [anon_sym_PIPE_EQ] = ACTIONS(1), - [anon_sym_CARET_EQ] = ACTIONS(1), - [anon_sym_PLUS_PLUS] = ACTIONS(1), - [anon_sym_if] = ACTIONS(1), - [anon_sym_else] = ACTIONS(1), - [anon_sym_switch] = ACTIONS(1), - [anon_sym_case] = ACTIONS(1), - [anon_sym_default] = ACTIONS(1), - [anon_sym_loop] = ACTIONS(1), - [anon_sym_for] = ACTIONS(1), - [anon_sym_while] = ACTIONS(1), - [anon_sym_break] = ACTIONS(1), - [sym_continue_statement] = ACTIONS(1), - [anon_sym_continuing] = ACTIONS(1), - [anon_sym_return] = ACTIONS(1), - [anon_sym_const_assert] = ACTIONS(1), - [anon_sym_discard] = ACTIONS(1), - [anon_sym_fn] = ACTIONS(1), - [anon_sym_DASH_GT] = ACTIONS(1), - [anon_sym_enable] = ACTIONS(1), - [anon_sym_perspective] = ACTIONS(1), - [anon_sym_linear] = ACTIONS(1), - [anon_sym_flat] = ACTIONS(1), - [anon_sym_center] = ACTIONS(1), - [anon_sym_centroid] = ACTIONS(1), - [anon_sym_sample] = ACTIONS(1), - [anon_sym_vertex_index] = ACTIONS(1), - [anon_sym_instance_index] = ACTIONS(1), - [anon_sym_position] = ACTIONS(1), - [anon_sym_front_facing] = ACTIONS(1), - [anon_sym_frag_depth] = ACTIONS(1), - [anon_sym_local_invocation_id] = ACTIONS(1), - [anon_sym_local_invocation_index] = ACTIONS(1), - [anon_sym_global_invocation_id] = ACTIONS(1), - [anon_sym_workgroup_id] = ACTIONS(1), - [anon_sym_num_workgroups] = ACTIONS(1), - [anon_sym_sample_index] = ACTIONS(1), - [anon_sym_sample_mask] = ACTIONS(1), - [anon_sym_read] = ACTIONS(1), - [anon_sym_write] = ACTIONS(1), - [anon_sym_read_write] = ACTIONS(1), - [anon_sym_function] = ACTIONS(1), - [anon_sym_private] = ACTIONS(1), - [anon_sym_workgroup] = ACTIONS(1), - [anon_sym_uniform] = ACTIONS(1), - [anon_sym_storage] = ACTIONS(1), - [anon_sym_rgba8unorm] = ACTIONS(1), - [anon_sym_rgba8snorm] = ACTIONS(1), - [anon_sym_rgba8uint] = ACTIONS(1), - [anon_sym_rgba8sint] = ACTIONS(1), - [anon_sym_rgba16uint] = ACTIONS(1), - [anon_sym_rgba16sint] = ACTIONS(1), - [anon_sym_rgba16float] = ACTIONS(1), - [anon_sym_r32uint] = ACTIONS(1), - [anon_sym_r32sint] = ACTIONS(1), - [anon_sym_r32float] = ACTIONS(1), - [anon_sym_rg32uint] = ACTIONS(1), - [anon_sym_rg32sint] = ACTIONS(1), - [anon_sym_rg32float] = ACTIONS(1), - [anon_sym_rgba32uint] = ACTIONS(1), - [anon_sym_rgba32sint] = ACTIONS(1), - [anon_sym_rgba32float] = ACTIONS(1), - [anon_sym_bgra8unorm] = ACTIONS(1), - [anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH] = ACTIONS(1), - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = ACTIONS(1), - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = ACTIONS(1), - [anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH] = ACTIONS(1), - [anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH] = ACTIONS(1), - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = ACTIONS(1), - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = ACTIONS(1), - [anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH] = ACTIONS(1), - [anon_sym_CompileShader] = ACTIONS(1), - [anon_sym_ComputeShader] = ACTIONS(1), - [anon_sym_DomainShader] = ACTIONS(1), - [anon_sym_GeometryShader] = ACTIONS(1), - [anon_sym_Hullshader] = ACTIONS(1), - [anon_sym_NULL] = ACTIONS(1), - [anon_sym_Self] = ACTIONS(1), - [anon_sym_abstract] = ACTIONS(1), - [anon_sym_active] = ACTIONS(1), - [anon_sym_alignas] = ACTIONS(1), - [anon_sym_alignof] = ACTIONS(1), - [anon_sym_as] = ACTIONS(1), - [anon_sym_asm] = ACTIONS(1), - [anon_sym_asm_fragment] = ACTIONS(1), - [anon_sym_async] = ACTIONS(1), - [anon_sym_attribute] = ACTIONS(1), - [anon_sym_auto] = ACTIONS(1), - [anon_sym_await] = ACTIONS(1), - [anon_sym_become] = ACTIONS(1), - [anon_sym_bf16] = ACTIONS(1), - [anon_sym_binding_array] = ACTIONS(1), - [anon_sym_cast] = ACTIONS(1), - [anon_sym_catch] = ACTIONS(1), - [anon_sym_class] = ACTIONS(1), - [anon_sym_co_await] = ACTIONS(1), - [anon_sym_co_return] = ACTIONS(1), - [anon_sym_co_yield] = ACTIONS(1), - [anon_sym_coherent] = ACTIONS(1), - [anon_sym_column_major] = ACTIONS(1), - [anon_sym_common] = ACTIONS(1), - [anon_sym_compile] = ACTIONS(1), - [anon_sym_compile_fragment] = ACTIONS(1), - [anon_sym_concept] = ACTIONS(1), - [anon_sym_const_cast] = ACTIONS(1), - [anon_sym_consteval] = ACTIONS(1), - [anon_sym_constexpr] = ACTIONS(1), - [anon_sym_constinit] = ACTIONS(1), - [anon_sym_crate] = ACTIONS(1), - [anon_sym_debugger] = ACTIONS(1), - [anon_sym_decltype] = ACTIONS(1), - [anon_sym_delete] = ACTIONS(1), - [anon_sym_demote] = ACTIONS(1), - [anon_sym_demote_to_helper] = ACTIONS(1), - [anon_sym_do] = ACTIONS(1), - [anon_sym_dynamic_cast] = ACTIONS(1), - [anon_sym_enum] = ACTIONS(1), - [anon_sym_explicit] = ACTIONS(1), - [anon_sym_export] = ACTIONS(1), - [anon_sym_extends] = ACTIONS(1), - [anon_sym_extern] = ACTIONS(1), - [anon_sym_external] = ACTIONS(1), - [anon_sym_f64] = ACTIONS(1), - [anon_sym_fallthrough] = ACTIONS(1), - [anon_sym_filter] = ACTIONS(1), - [anon_sym_final] = ACTIONS(1), - [anon_sym_finally] = ACTIONS(1), - [anon_sym_friend] = ACTIONS(1), - [anon_sym_from] = ACTIONS(1), - [anon_sym_fxgroup] = ACTIONS(1), - [anon_sym_get] = ACTIONS(1), - [anon_sym_goto] = ACTIONS(1), - [anon_sym_groupshared] = ACTIONS(1), - [anon_sym_handle] = ACTIONS(1), - [anon_sym_highp] = ACTIONS(1), - [anon_sym_i16] = ACTIONS(1), - [anon_sym_i64] = ACTIONS(1), - [anon_sym_i8] = ACTIONS(1), - [anon_sym_impl] = ACTIONS(1), - [anon_sym_implements] = ACTIONS(1), - [anon_sym_import] = ACTIONS(1), - [anon_sym_inline] = ACTIONS(1), - [anon_sym_inout] = ACTIONS(1), - [anon_sym_instanceof] = ACTIONS(1), - [anon_sym_interface] = ACTIONS(1), - [anon_sym_layout] = ACTIONS(1), - [anon_sym_lowp] = ACTIONS(1), - [anon_sym_macro] = ACTIONS(1), - [anon_sym_macro_rules] = ACTIONS(1), - [anon_sym_match] = ACTIONS(1), - [anon_sym_mediump] = ACTIONS(1), - [anon_sym_meta] = ACTIONS(1), - [anon_sym_mod] = ACTIONS(1), - [anon_sym_module] = ACTIONS(1), - [anon_sym_move] = ACTIONS(1), - [anon_sym_mut] = ACTIONS(1), - [anon_sym_mutable] = ACTIONS(1), - [anon_sym_namespace] = ACTIONS(1), - [anon_sym_new] = ACTIONS(1), - [anon_sym_nil] = ACTIONS(1), - [anon_sym_noexcept] = ACTIONS(1), - [anon_sym_noinline] = ACTIONS(1), - [anon_sym_nointerpolation] = ACTIONS(1), - [anon_sym_noperspective] = ACTIONS(1), - [anon_sym_null] = ACTIONS(1), - [anon_sym_nullptr] = ACTIONS(1), - [anon_sym_of] = ACTIONS(1), - [anon_sym_operator] = ACTIONS(1), - [anon_sym_package] = ACTIONS(1), - [anon_sym_packoffset] = ACTIONS(1), - [anon_sym_partition] = ACTIONS(1), - [anon_sym_pass] = ACTIONS(1), - [anon_sym_patch] = ACTIONS(1), - [anon_sym_pixelfragment] = ACTIONS(1), - [anon_sym_precise] = ACTIONS(1), - [anon_sym_precision] = ACTIONS(1), - [anon_sym_premerge] = ACTIONS(1), - [anon_sym_priv] = ACTIONS(1), - [anon_sym_protected] = ACTIONS(1), - [anon_sym_pub] = ACTIONS(1), - [anon_sym_public] = ACTIONS(1), - [anon_sym_quat] = ACTIONS(1), - [anon_sym_readonly] = ACTIONS(1), - [anon_sym_ref] = ACTIONS(1), - [anon_sym_regardless] = ACTIONS(1), - [anon_sym_register] = ACTIONS(1), - [anon_sym_reinterpret_cast] = ACTIONS(1), - [anon_sym_requires] = ACTIONS(1), - [anon_sym_resource] = ACTIONS(1), - [anon_sym_restrict] = ACTIONS(1), - [anon_sym_self] = ACTIONS(1), - [anon_sym_set] = ACTIONS(1), - [anon_sym_shared] = ACTIONS(1), - [anon_sym_signed] = ACTIONS(1), - [anon_sym_sizeof] = ACTIONS(1), - [anon_sym_smooth] = ACTIONS(1), - [anon_sym_snorm] = ACTIONS(1), - [anon_sym_static] = ACTIONS(1), - [anon_sym_static_assert] = ACTIONS(1), - [anon_sym_static_cast] = ACTIONS(1), - [anon_sym_std] = ACTIONS(1), - [anon_sym_subroutine] = ACTIONS(1), - [anon_sym_super] = ACTIONS(1), - [anon_sym_target] = ACTIONS(1), - [anon_sym_template] = ACTIONS(1), - [anon_sym_this] = ACTIONS(1), - [anon_sym_thread_local] = ACTIONS(1), - [anon_sym_throw] = ACTIONS(1), - [anon_sym_trait] = ACTIONS(1), - [anon_sym_try] = ACTIONS(1), - [anon_sym_type] = ACTIONS(1), - [anon_sym_typedef] = ACTIONS(1), - [anon_sym_typeid] = ACTIONS(1), - [anon_sym_typename] = ACTIONS(1), - [anon_sym_typeof] = ACTIONS(1), - [anon_sym_u16] = ACTIONS(1), - [anon_sym_u64] = ACTIONS(1), - [anon_sym_u8] = ACTIONS(1), - [anon_sym_union] = ACTIONS(1), - [anon_sym_unless] = ACTIONS(1), - [anon_sym_unorm] = ACTIONS(1), - [anon_sym_unsafe] = ACTIONS(1), - [anon_sym_unsized] = ACTIONS(1), - [anon_sym_use] = ACTIONS(1), - [anon_sym_using] = ACTIONS(1), - [anon_sym_varying] = ACTIONS(1), - [anon_sym_virtual] = ACTIONS(1), - [anon_sym_volatile] = ACTIONS(1), - [anon_sym_wgsl] = ACTIONS(1), - [anon_sym_where] = ACTIONS(1), - [anon_sym_with] = ACTIONS(1), - [anon_sym_writeonly] = ACTIONS(1), - [anon_sym_yield] = ACTIONS(1), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - [sym__disambiguate_template] = ACTIONS(1), - [sym__template_args_start] = ACTIONS(1), - [sym__template_args_end] = ACTIONS(1), - [sym__less_than] = ACTIONS(1), - [sym__less_than_equal] = ACTIONS(1), - [sym__shift_left] = ACTIONS(1), - [sym__shift_left_assign] = ACTIONS(1), - [sym__greater_than] = ACTIONS(1), - [sym__greater_than_equal] = ACTIONS(1), - [sym__shift_right] = ACTIONS(1), - [sym__shift_right_assign] = ACTIONS(1), - [sym__error_sentinel] = ACTIONS(1), - }, - [1] = { - [sym_translation_unit] = STATE(650), - [sym_global_directive] = STATE(161), - [sym_attribute] = STATE(355), - [sym_struct_decl] = STATE(179), - [sym_type_alias_decl] = STATE(646), - [sym_variable_decl] = STATE(464), - [sym_global_variable_decl] = STATE(646), - [sym_global_constant_decl] = STATE(646), - [sym_const_assert_statement] = STATE(646), - [sym_function_decl] = STATE(179), - [sym_function_header] = STATE(465), - [sym_enable_directive] = STATE(338), - [aux_sym_translation_unit_repeat1] = STATE(161), - [aux_sym_translation_unit_repeat2] = STATE(179), - [aux_sym_struct_member_repeat1] = STATE(355), - [ts_builtin_sym_end] = ACTIONS(5), - [anon_sym_SEMI] = ACTIONS(7), - [anon_sym_AT] = ACTIONS(9), - [anon_sym_const] = ACTIONS(11), - [anon_sym_struct] = ACTIONS(13), - [anon_sym_alias] = ACTIONS(15), - [anon_sym_var] = ACTIONS(17), - [anon_sym_override] = ACTIONS(19), - [anon_sym_const_assert] = ACTIONS(21), - [anon_sym_fn] = ACTIONS(23), - [anon_sym_enable] = ACTIONS(25), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [2] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(414), - [sym_case_selector] = STATE(429), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_LBRACE] = ACTIONS(47), - [anon_sym_COLON] = ACTIONS(47), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [anon_sym_default] = ACTIONS(73), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [3] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(414), - [sym_case_selector] = STATE(429), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_LBRACE] = ACTIONS(75), - [anon_sym_COLON] = ACTIONS(75), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [anon_sym_default] = ACTIONS(73), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [4] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(414), - [sym_case_selectors] = STATE(438), - [sym_case_selector] = STATE(406), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [anon_sym_default] = ACTIONS(73), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [5] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_expression_comma_list] = STATE(540), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(415), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_RPAREN] = ACTIONS(77), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [6] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_expression_comma_list] = STATE(610), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(415), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_RPAREN] = ACTIONS(79), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [7] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(414), - [sym_case_selector] = STATE(429), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [anon_sym_default] = ACTIONS(73), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [8] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_expression_comma_list] = STATE(596), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(415), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_RPAREN] = ACTIONS(81), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [9] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_expression_comma_list] = STATE(617), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(415), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_RPAREN] = ACTIONS(83), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [10] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_expression_comma_list] = STATE(603), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(415), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_RPAREN] = ACTIONS(85), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [11] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_expression_comma_list] = STATE(576), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(415), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_RPAREN] = ACTIONS(87), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [12] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(490), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_RPAREN] = ACTIONS(89), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [13] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(490), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_RPAREN] = ACTIONS(91), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [14] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(644), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_SEMI] = ACTIONS(93), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [15] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(426), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_RPAREN] = ACTIONS(95), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [16] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(443), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_RPAREN] = ACTIONS(95), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [17] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(598), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_SEMI] = ACTIONS(97), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [18] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(534), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_SEMI] = ACTIONS(99), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [19] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(541), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [20] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(609), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [21] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(606), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [22] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(602), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [23] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(535), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [24] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(523), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [25] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(595), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [26] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(508), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [27] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(590), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [28] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(591), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [29] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(533), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [30] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(573), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [31] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(504), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [32] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_variable_statement] = STATE(551), - [sym_variable_decl] = STATE(521), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_compound_statement] = STATE(99), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_if_statement] = STATE(99), - [sym_if_clause] = STATE(88), - [sym_switch_statement] = STATE(99), - [sym_loop_statement] = STATE(99), - [sym_for_statement] = STATE(99), - [sym_while_statement] = STATE(99), - [sym_break_statement] = STATE(551), - [sym_continuing_statement] = STATE(563), - [sym_return_statement] = STATE(551), - [sym_func_call_statement] = STATE(551), - [sym_const_assert_statement] = STATE(551), - [sym_statement] = STATE(45), - [sym_variable_updating_statement] = STATE(551), - [aux_sym_compound_statement_repeat1] = STATE(45), - [sym_ident_pattern_token] = ACTIONS(101), - [anon_sym_SEMI] = ACTIONS(103), - [anon_sym_LPAREN] = ACTIONS(105), - [anon_sym_const] = ACTIONS(107), - [anon_sym_array] = ACTIONS(45), - [anon_sym_LBRACE] = ACTIONS(109), - [anon_sym_RBRACE] = ACTIONS(111), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_let] = ACTIONS(107), - [anon_sym_var] = ACTIONS(113), - [anon_sym_STAR] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(115), - [anon_sym__] = ACTIONS(117), - [anon_sym_if] = ACTIONS(119), - [anon_sym_switch] = ACTIONS(121), - [anon_sym_loop] = ACTIONS(123), - [anon_sym_for] = ACTIONS(125), - [anon_sym_while] = ACTIONS(127), - [anon_sym_break] = ACTIONS(129), - [sym_continue_statement] = ACTIONS(131), - [anon_sym_continuing] = ACTIONS(133), - [anon_sym_return] = ACTIONS(135), - [anon_sym_const_assert] = ACTIONS(137), - [anon_sym_discard] = ACTIONS(131), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [33] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(620), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [34] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(490), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [35] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(548), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [36] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(569), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [37] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(546), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [38] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(583), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [39] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(424), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [40] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(422), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [41] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(572), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [42] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(481), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [43] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(556), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [44] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(575), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [45] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_variable_statement] = STATE(551), - [sym_variable_decl] = STATE(521), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_compound_statement] = STATE(99), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_if_statement] = STATE(99), - [sym_if_clause] = STATE(88), - [sym_switch_statement] = STATE(99), - [sym_loop_statement] = STATE(99), - [sym_for_statement] = STATE(99), - [sym_while_statement] = STATE(99), - [sym_break_statement] = STATE(551), - [sym_continuing_statement] = STATE(597), - [sym_return_statement] = STATE(551), - [sym_func_call_statement] = STATE(551), - [sym_const_assert_statement] = STATE(551), - [sym_statement] = STATE(51), - [sym_variable_updating_statement] = STATE(551), - [aux_sym_compound_statement_repeat1] = STATE(51), - [sym_ident_pattern_token] = ACTIONS(101), - [anon_sym_SEMI] = ACTIONS(103), - [anon_sym_LPAREN] = ACTIONS(105), - [anon_sym_const] = ACTIONS(107), - [anon_sym_array] = ACTIONS(45), - [anon_sym_LBRACE] = ACTIONS(109), - [anon_sym_RBRACE] = ACTIONS(139), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_let] = ACTIONS(107), - [anon_sym_var] = ACTIONS(113), - [anon_sym_STAR] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(115), - [anon_sym__] = ACTIONS(117), - [anon_sym_if] = ACTIONS(119), - [anon_sym_switch] = ACTIONS(121), - [anon_sym_loop] = ACTIONS(123), - [anon_sym_for] = ACTIONS(125), - [anon_sym_while] = ACTIONS(127), - [anon_sym_break] = ACTIONS(129), - [sym_continue_statement] = ACTIONS(131), - [anon_sym_continuing] = ACTIONS(133), - [anon_sym_return] = ACTIONS(135), - [anon_sym_const_assert] = ACTIONS(137), - [anon_sym_discard] = ACTIONS(131), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [46] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(568), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [47] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(448), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [48] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(613), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [49] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(162), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(356), - [sym_short_circuit_and_expression] = STATE(601), - [sym_short_circuit_or_expression] = STATE(600), - [sym_binary_or_expression] = STATE(594), - [sym_binary_and_expression] = STATE(593), - [sym_binary_xor_expression] = STATE(592), - [sym_bitwise_expression] = STATE(393), - [sym_expression] = STATE(616), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [50] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_variable_statement] = STATE(551), - [sym_variable_decl] = STATE(521), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_compound_statement] = STATE(99), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_if_statement] = STATE(99), - [sym_if_clause] = STATE(88), - [sym_switch_statement] = STATE(99), - [sym_loop_statement] = STATE(99), - [sym_for_statement] = STATE(99), - [sym_while_statement] = STATE(99), - [sym_break_statement] = STATE(551), - [sym_break_if_statement] = STATE(633), - [sym_return_statement] = STATE(551), - [sym_func_call_statement] = STATE(551), - [sym_const_assert_statement] = STATE(551), - [sym_statement] = STATE(52), - [sym_variable_updating_statement] = STATE(551), - [aux_sym_compound_statement_repeat1] = STATE(52), - [sym_ident_pattern_token] = ACTIONS(101), - [anon_sym_SEMI] = ACTIONS(103), - [anon_sym_LPAREN] = ACTIONS(105), - [anon_sym_const] = ACTIONS(107), - [anon_sym_array] = ACTIONS(45), - [anon_sym_LBRACE] = ACTIONS(109), - [anon_sym_RBRACE] = ACTIONS(141), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_let] = ACTIONS(107), - [anon_sym_var] = ACTIONS(113), - [anon_sym_STAR] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(115), - [anon_sym__] = ACTIONS(117), - [anon_sym_if] = ACTIONS(119), - [anon_sym_switch] = ACTIONS(121), - [anon_sym_loop] = ACTIONS(123), - [anon_sym_for] = ACTIONS(125), - [anon_sym_while] = ACTIONS(127), - [anon_sym_break] = ACTIONS(143), - [sym_continue_statement] = ACTIONS(131), - [anon_sym_return] = ACTIONS(135), - [anon_sym_const_assert] = ACTIONS(137), - [anon_sym_discard] = ACTIONS(131), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [51] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_variable_statement] = STATE(551), - [sym_variable_decl] = STATE(521), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_compound_statement] = STATE(99), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_if_statement] = STATE(99), - [sym_if_clause] = STATE(88), - [sym_switch_statement] = STATE(99), - [sym_loop_statement] = STATE(99), - [sym_for_statement] = STATE(99), - [sym_while_statement] = STATE(99), - [sym_break_statement] = STATE(551), - [sym_return_statement] = STATE(551), - [sym_func_call_statement] = STATE(551), - [sym_const_assert_statement] = STATE(551), - [sym_statement] = STATE(51), - [sym_variable_updating_statement] = STATE(551), - [aux_sym_compound_statement_repeat1] = STATE(51), - [sym_ident_pattern_token] = ACTIONS(145), - [anon_sym_SEMI] = ACTIONS(148), - [anon_sym_LPAREN] = ACTIONS(151), - [anon_sym_const] = ACTIONS(154), - [anon_sym_array] = ACTIONS(157), - [anon_sym_LBRACE] = ACTIONS(160), - [anon_sym_RBRACE] = ACTIONS(163), - [anon_sym_sampler] = ACTIONS(165), - [anon_sym_sampler_comparison] = ACTIONS(165), - [anon_sym_texture_1d] = ACTIONS(168), - [anon_sym_texture_2d] = ACTIONS(168), - [anon_sym_texture_2d_array] = ACTIONS(168), - [anon_sym_texture_3d] = ACTIONS(168), - [anon_sym_texture_cube] = ACTIONS(168), - [anon_sym_texture_cube_array] = ACTIONS(168), - [sym_multisampled_texture_type] = ACTIONS(171), - [anon_sym_texture_storage_1d] = ACTIONS(174), - [anon_sym_texture_storage_2d] = ACTIONS(174), - [anon_sym_texture_storage_2d_array] = ACTIONS(174), - [anon_sym_texture_storage_3d] = ACTIONS(174), - [anon_sym_texture_depth_2d] = ACTIONS(177), - [anon_sym_texture_depth_2d_array] = ACTIONS(177), - [anon_sym_texture_depth_cube] = ACTIONS(177), - [anon_sym_texture_depth_cube_array] = ACTIONS(177), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(177), - [anon_sym_bool] = ACTIONS(180), - [anon_sym_f32] = ACTIONS(180), - [anon_sym_f16] = ACTIONS(180), - [anon_sym_i32] = ACTIONS(180), - [anon_sym_u32] = ACTIONS(180), - [anon_sym_ptr] = ACTIONS(183), - [anon_sym_atomic] = ACTIONS(186), - [anon_sym_vec2] = ACTIONS(189), - [anon_sym_vec3] = ACTIONS(189), - [anon_sym_vec4] = ACTIONS(189), - [anon_sym_mat2x2] = ACTIONS(192), - [anon_sym_mat2x3] = ACTIONS(192), - [anon_sym_mat2x4] = ACTIONS(192), - [anon_sym_mat3x2] = ACTIONS(192), - [anon_sym_mat3x3] = ACTIONS(192), - [anon_sym_mat3x4] = ACTIONS(192), - [anon_sym_mat4x2] = ACTIONS(192), - [anon_sym_mat4x3] = ACTIONS(192), - [anon_sym_mat4x4] = ACTIONS(192), - [anon_sym_let] = ACTIONS(154), - [anon_sym_var] = ACTIONS(195), - [anon_sym_STAR] = ACTIONS(198), - [anon_sym_AMP] = ACTIONS(198), - [anon_sym__] = ACTIONS(201), - [anon_sym_if] = ACTIONS(204), - [anon_sym_switch] = ACTIONS(207), - [anon_sym_loop] = ACTIONS(210), - [anon_sym_for] = ACTIONS(213), - [anon_sym_while] = ACTIONS(216), - [anon_sym_break] = ACTIONS(219), - [sym_continue_statement] = ACTIONS(222), - [anon_sym_continuing] = ACTIONS(225), - [anon_sym_return] = ACTIONS(227), - [anon_sym_const_assert] = ACTIONS(230), - [anon_sym_discard] = ACTIONS(222), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [52] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_variable_statement] = STATE(551), - [sym_variable_decl] = STATE(521), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_compound_statement] = STATE(99), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_if_statement] = STATE(99), - [sym_if_clause] = STATE(88), - [sym_switch_statement] = STATE(99), - [sym_loop_statement] = STATE(99), - [sym_for_statement] = STATE(99), - [sym_while_statement] = STATE(99), - [sym_break_statement] = STATE(551), - [sym_break_if_statement] = STATE(655), - [sym_return_statement] = STATE(551), - [sym_func_call_statement] = STATE(551), - [sym_const_assert_statement] = STATE(551), - [sym_statement] = STATE(51), - [sym_variable_updating_statement] = STATE(551), - [aux_sym_compound_statement_repeat1] = STATE(51), - [sym_ident_pattern_token] = ACTIONS(101), - [anon_sym_SEMI] = ACTIONS(103), - [anon_sym_LPAREN] = ACTIONS(105), - [anon_sym_const] = ACTIONS(107), - [anon_sym_array] = ACTIONS(45), - [anon_sym_LBRACE] = ACTIONS(109), - [anon_sym_RBRACE] = ACTIONS(233), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_let] = ACTIONS(107), - [anon_sym_var] = ACTIONS(113), - [anon_sym_STAR] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(115), - [anon_sym__] = ACTIONS(117), - [anon_sym_if] = ACTIONS(119), - [anon_sym_switch] = ACTIONS(121), - [anon_sym_loop] = ACTIONS(123), - [anon_sym_for] = ACTIONS(125), - [anon_sym_while] = ACTIONS(127), - [anon_sym_break] = ACTIONS(143), - [sym_continue_statement] = ACTIONS(131), - [anon_sym_return] = ACTIONS(135), - [anon_sym_const_assert] = ACTIONS(137), - [anon_sym_discard] = ACTIONS(131), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [53] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_variable_statement] = STATE(551), - [sym_variable_decl] = STATE(521), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_compound_statement] = STATE(99), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_if_statement] = STATE(99), - [sym_if_clause] = STATE(88), - [sym_switch_statement] = STATE(99), - [sym_loop_statement] = STATE(99), - [sym_for_statement] = STATE(99), - [sym_while_statement] = STATE(99), - [sym_break_statement] = STATE(551), - [sym_return_statement] = STATE(551), - [sym_func_call_statement] = STATE(551), - [sym_const_assert_statement] = STATE(551), - [sym_statement] = STATE(54), - [sym_variable_updating_statement] = STATE(551), - [aux_sym_compound_statement_repeat1] = STATE(54), - [sym_ident_pattern_token] = ACTIONS(101), - [anon_sym_SEMI] = ACTIONS(103), - [anon_sym_LPAREN] = ACTIONS(105), - [anon_sym_const] = ACTIONS(107), - [anon_sym_array] = ACTIONS(45), - [anon_sym_LBRACE] = ACTIONS(109), - [anon_sym_RBRACE] = ACTIONS(235), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_let] = ACTIONS(107), - [anon_sym_var] = ACTIONS(113), - [anon_sym_STAR] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(115), - [anon_sym__] = ACTIONS(117), - [anon_sym_if] = ACTIONS(119), - [anon_sym_switch] = ACTIONS(121), - [anon_sym_loop] = ACTIONS(123), - [anon_sym_for] = ACTIONS(125), - [anon_sym_while] = ACTIONS(127), - [anon_sym_break] = ACTIONS(129), - [sym_continue_statement] = ACTIONS(131), - [anon_sym_return] = ACTIONS(135), - [anon_sym_const_assert] = ACTIONS(137), - [anon_sym_discard] = ACTIONS(131), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [54] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_variable_statement] = STATE(551), - [sym_variable_decl] = STATE(521), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_compound_statement] = STATE(99), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_if_statement] = STATE(99), - [sym_if_clause] = STATE(88), - [sym_switch_statement] = STATE(99), - [sym_loop_statement] = STATE(99), - [sym_for_statement] = STATE(99), - [sym_while_statement] = STATE(99), - [sym_break_statement] = STATE(551), - [sym_return_statement] = STATE(551), - [sym_func_call_statement] = STATE(551), - [sym_const_assert_statement] = STATE(551), - [sym_statement] = STATE(51), - [sym_variable_updating_statement] = STATE(551), - [aux_sym_compound_statement_repeat1] = STATE(51), - [sym_ident_pattern_token] = ACTIONS(101), - [anon_sym_SEMI] = ACTIONS(103), - [anon_sym_LPAREN] = ACTIONS(105), - [anon_sym_const] = ACTIONS(107), - [anon_sym_array] = ACTIONS(45), - [anon_sym_LBRACE] = ACTIONS(109), - [anon_sym_RBRACE] = ACTIONS(237), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_let] = ACTIONS(107), - [anon_sym_var] = ACTIONS(113), - [anon_sym_STAR] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(115), - [anon_sym__] = ACTIONS(117), - [anon_sym_if] = ACTIONS(119), - [anon_sym_switch] = ACTIONS(121), - [anon_sym_loop] = ACTIONS(123), - [anon_sym_for] = ACTIONS(125), - [anon_sym_while] = ACTIONS(127), - [anon_sym_break] = ACTIONS(129), - [sym_continue_statement] = ACTIONS(131), - [anon_sym_return] = ACTIONS(135), - [anon_sym_const_assert] = ACTIONS(137), - [anon_sym_discard] = ACTIONS(131), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [55] = { - [sym_bool_literal] = STATE(339), - [sym_int_literal] = STATE(339), - [sym_decimal_int_literal] = STATE(336), - [sym_float_literal] = STATE(339), - [sym_decimal_float_literal] = STATE(332), - [sym_hex_float_literal] = STATE(332), - [sym_literal] = STATE(329), - [sym_ident] = STATE(314), - [sym_array_type_specifier] = STATE(361), - [sym_element_count_expression] = STATE(582), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(311), - [sym_call_expression] = STATE(329), - [sym_call_phrase] = STATE(324), - [sym_callable] = STATE(473), - [sym_paren_expression] = STATE(329), - [sym_unary_expression] = STATE(354), - [sym_singular_expression] = STATE(350), - [sym_multiplicative_expression] = STATE(373), - [sym_additive_expression] = STATE(411), - [sym_binary_or_expression] = STATE(565), - [sym_binary_and_expression] = STATE(566), - [sym_binary_xor_expression] = STATE(567), - [sym_bitwise_expression] = STATE(611), - [sym_ident_pattern_token] = ACTIONS(239), - [anon_sym_true] = ACTIONS(241), - [anon_sym_false] = ACTIONS(241), - [aux_sym_decimal_int_literal_token1] = ACTIONS(243), - [aux_sym_decimal_int_literal_token2] = ACTIONS(243), - [sym_hex_int_literal] = ACTIONS(245), - [aux_sym_decimal_float_literal_token1] = ACTIONS(247), - [aux_sym_decimal_float_literal_token2] = ACTIONS(247), - [aux_sym_decimal_float_literal_token3] = ACTIONS(247), - [aux_sym_decimal_float_literal_token4] = ACTIONS(249), - [aux_sym_decimal_float_literal_token5] = ACTIONS(247), - [aux_sym_hex_float_literal_token1] = ACTIONS(251), - [aux_sym_hex_float_literal_token2] = ACTIONS(253), - [aux_sym_hex_float_literal_token3] = ACTIONS(251), - [anon_sym_LPAREN] = ACTIONS(255), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(257), - [anon_sym_DASH] = ACTIONS(259), - [anon_sym_BANG] = ACTIONS(259), - [anon_sym_TILDE] = ACTIONS(259), - [anon_sym_STAR] = ACTIONS(259), - [anon_sym_AMP] = ACTIONS(259), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [56] = { - [sym_bool_literal] = STATE(339), - [sym_int_literal] = STATE(339), - [sym_decimal_int_literal] = STATE(336), - [sym_float_literal] = STATE(339), - [sym_decimal_float_literal] = STATE(332), - [sym_hex_float_literal] = STATE(332), - [sym_literal] = STATE(329), - [sym_ident] = STATE(314), - [sym_array_type_specifier] = STATE(361), - [sym_element_count_expression] = STATE(607), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(311), - [sym_call_expression] = STATE(329), - [sym_call_phrase] = STATE(324), - [sym_callable] = STATE(473), - [sym_paren_expression] = STATE(329), - [sym_unary_expression] = STATE(354), - [sym_singular_expression] = STATE(350), - [sym_multiplicative_expression] = STATE(373), - [sym_additive_expression] = STATE(411), - [sym_binary_or_expression] = STATE(565), - [sym_binary_and_expression] = STATE(566), - [sym_binary_xor_expression] = STATE(567), - [sym_bitwise_expression] = STATE(611), - [sym_ident_pattern_token] = ACTIONS(239), - [anon_sym_true] = ACTIONS(241), - [anon_sym_false] = ACTIONS(241), - [aux_sym_decimal_int_literal_token1] = ACTIONS(243), - [aux_sym_decimal_int_literal_token2] = ACTIONS(243), - [sym_hex_int_literal] = ACTIONS(245), - [aux_sym_decimal_float_literal_token1] = ACTIONS(247), - [aux_sym_decimal_float_literal_token2] = ACTIONS(247), - [aux_sym_decimal_float_literal_token3] = ACTIONS(247), - [aux_sym_decimal_float_literal_token4] = ACTIONS(249), - [aux_sym_decimal_float_literal_token5] = ACTIONS(247), - [aux_sym_hex_float_literal_token1] = ACTIONS(251), - [aux_sym_hex_float_literal_token2] = ACTIONS(253), - [aux_sym_hex_float_literal_token3] = ACTIONS(251), - [anon_sym_LPAREN] = ACTIONS(255), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(257), - [anon_sym_DASH] = ACTIONS(259), - [anon_sym_BANG] = ACTIONS(259), - [anon_sym_TILDE] = ACTIONS(259), - [anon_sym_STAR] = ACTIONS(259), - [anon_sym_AMP] = ACTIONS(259), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [57] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(182), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(299), - [sym_relational_expression] = STATE(378), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [58] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(182), - [sym_singular_expression] = STATE(165), - [sym_multiplicative_expression] = STATE(194), - [sym_additive_expression] = STATE(214), - [sym_shift_expression] = STATE(291), - [sym_relational_expression] = STATE(375), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [59] = { - [sym_bool_literal] = STATE(243), - [sym_int_literal] = STATE(243), - [sym_decimal_int_literal] = STATE(236), - [sym_float_literal] = STATE(243), - [sym_decimal_float_literal] = STATE(232), - [sym_hex_float_literal] = STATE(232), - [sym_literal] = STATE(227), - [sym_ident] = STATE(210), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(213), - [sym_call_expression] = STATE(227), - [sym_call_phrase] = STATE(229), - [sym_callable] = STATE(480), - [sym_paren_expression] = STATE(227), - [sym_unary_expression] = STATE(257), - [sym_singular_expression] = STATE(262), - [sym_multiplicative_expression] = STATE(293), - [sym_additive_expression] = STATE(317), - [sym_shift_expression] = STATE(359), - [sym_ident_pattern_token] = ACTIONS(261), - [anon_sym_true] = ACTIONS(263), - [anon_sym_false] = ACTIONS(263), - [aux_sym_decimal_int_literal_token1] = ACTIONS(265), - [aux_sym_decimal_int_literal_token2] = ACTIONS(265), - [sym_hex_int_literal] = ACTIONS(267), - [aux_sym_decimal_float_literal_token1] = ACTIONS(269), - [aux_sym_decimal_float_literal_token2] = ACTIONS(269), - [aux_sym_decimal_float_literal_token3] = ACTIONS(269), - [aux_sym_decimal_float_literal_token4] = ACTIONS(271), - [aux_sym_decimal_float_literal_token5] = ACTIONS(269), - [aux_sym_hex_float_literal_token1] = ACTIONS(273), - [aux_sym_hex_float_literal_token2] = ACTIONS(275), - [aux_sym_hex_float_literal_token3] = ACTIONS(273), - [anon_sym_LPAREN] = ACTIONS(277), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(279), - [anon_sym_DASH] = ACTIONS(281), - [anon_sym_BANG] = ACTIONS(281), - [anon_sym_TILDE] = ACTIONS(281), - [anon_sym_STAR] = ACTIONS(281), - [anon_sym_AMP] = ACTIONS(281), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [60] = { - [sym_bool_literal] = STATE(243), - [sym_int_literal] = STATE(243), - [sym_decimal_int_literal] = STATE(236), - [sym_float_literal] = STATE(243), - [sym_decimal_float_literal] = STATE(232), - [sym_hex_float_literal] = STATE(232), - [sym_literal] = STATE(227), - [sym_ident] = STATE(210), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(213), - [sym_call_expression] = STATE(227), - [sym_call_phrase] = STATE(229), - [sym_callable] = STATE(480), - [sym_paren_expression] = STATE(227), - [sym_unary_expression] = STATE(289), - [sym_singular_expression] = STATE(262), - [sym_multiplicative_expression] = STATE(298), - [sym_additive_expression] = STATE(346), - [sym_shift_expression] = STATE(359), - [sym_ident_pattern_token] = ACTIONS(261), - [anon_sym_true] = ACTIONS(263), - [anon_sym_false] = ACTIONS(263), - [aux_sym_decimal_int_literal_token1] = ACTIONS(265), - [aux_sym_decimal_int_literal_token2] = ACTIONS(265), - [sym_hex_int_literal] = ACTIONS(267), - [aux_sym_decimal_float_literal_token1] = ACTIONS(269), - [aux_sym_decimal_float_literal_token2] = ACTIONS(269), - [aux_sym_decimal_float_literal_token3] = ACTIONS(269), - [aux_sym_decimal_float_literal_token4] = ACTIONS(271), - [aux_sym_decimal_float_literal_token5] = ACTIONS(269), - [aux_sym_hex_float_literal_token1] = ACTIONS(273), - [aux_sym_hex_float_literal_token2] = ACTIONS(275), - [aux_sym_hex_float_literal_token3] = ACTIONS(273), - [anon_sym_LPAREN] = ACTIONS(277), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(279), - [anon_sym_DASH] = ACTIONS(281), - [anon_sym_BANG] = ACTIONS(281), - [anon_sym_TILDE] = ACTIONS(281), - [anon_sym_STAR] = ACTIONS(281), - [anon_sym_AMP] = ACTIONS(281), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [61] = { - [sym_bool_literal] = STATE(339), - [sym_int_literal] = STATE(339), - [sym_decimal_int_literal] = STATE(336), - [sym_float_literal] = STATE(339), - [sym_decimal_float_literal] = STATE(332), - [sym_hex_float_literal] = STATE(332), - [sym_literal] = STATE(329), - [sym_ident] = STATE(314), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(311), - [sym_call_expression] = STATE(329), - [sym_call_phrase] = STATE(324), - [sym_callable] = STATE(473), - [sym_paren_expression] = STATE(329), - [sym_unary_expression] = STATE(397), - [sym_singular_expression] = STATE(350), - [sym_multiplicative_expression] = STATE(364), - [sym_ident_pattern_token] = ACTIONS(239), - [anon_sym_true] = ACTIONS(241), - [anon_sym_false] = ACTIONS(241), - [aux_sym_decimal_int_literal_token1] = ACTIONS(243), - [aux_sym_decimal_int_literal_token2] = ACTIONS(243), - [sym_hex_int_literal] = ACTIONS(245), - [aux_sym_decimal_float_literal_token1] = ACTIONS(247), - [aux_sym_decimal_float_literal_token2] = ACTIONS(247), - [aux_sym_decimal_float_literal_token3] = ACTIONS(247), - [aux_sym_decimal_float_literal_token4] = ACTIONS(249), - [aux_sym_decimal_float_literal_token5] = ACTIONS(247), - [aux_sym_hex_float_literal_token1] = ACTIONS(251), - [aux_sym_hex_float_literal_token2] = ACTIONS(253), - [aux_sym_hex_float_literal_token3] = ACTIONS(251), - [anon_sym_LPAREN] = ACTIONS(255), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(257), - [anon_sym_DASH] = ACTIONS(259), - [anon_sym_BANG] = ACTIONS(259), - [anon_sym_TILDE] = ACTIONS(259), - [anon_sym_STAR] = ACTIONS(259), - [anon_sym_AMP] = ACTIONS(259), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [62] = { - [sym_bool_literal] = STATE(231), - [sym_int_literal] = STATE(231), - [sym_decimal_int_literal] = STATE(220), - [sym_float_literal] = STATE(231), - [sym_decimal_float_literal] = STATE(223), - [sym_hex_float_literal] = STATE(223), - [sym_literal] = STATE(245), - [sym_ident] = STATE(206), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(207), - [sym_call_expression] = STATE(245), - [sym_call_phrase] = STATE(237), - [sym_callable] = STATE(500), - [sym_paren_expression] = STATE(245), - [sym_unary_expression] = STATE(303), - [sym_singular_expression] = STATE(273), - [sym_multiplicative_expression] = STATE(307), - [sym_ident_pattern_token] = ACTIONS(283), - [anon_sym_true] = ACTIONS(285), - [anon_sym_false] = ACTIONS(285), - [aux_sym_decimal_int_literal_token1] = ACTIONS(287), - [aux_sym_decimal_int_literal_token2] = ACTIONS(287), - [sym_hex_int_literal] = ACTIONS(289), - [aux_sym_decimal_float_literal_token1] = ACTIONS(291), - [aux_sym_decimal_float_literal_token2] = ACTIONS(291), - [aux_sym_decimal_float_literal_token3] = ACTIONS(291), - [aux_sym_decimal_float_literal_token4] = ACTIONS(293), - [aux_sym_decimal_float_literal_token5] = ACTIONS(291), - [aux_sym_hex_float_literal_token1] = ACTIONS(295), - [aux_sym_hex_float_literal_token2] = ACTIONS(297), - [aux_sym_hex_float_literal_token3] = ACTIONS(295), - [anon_sym_LPAREN] = ACTIONS(299), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(301), - [anon_sym_DASH] = ACTIONS(303), - [anon_sym_BANG] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(303), - [anon_sym_STAR] = ACTIONS(303), - [anon_sym_AMP] = ACTIONS(303), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [63] = { - [sym_bool_literal] = STATE(283), - [sym_int_literal] = STATE(283), - [sym_decimal_int_literal] = STATE(287), - [sym_float_literal] = STATE(283), - [sym_decimal_float_literal] = STATE(259), - [sym_hex_float_literal] = STATE(259), - [sym_literal] = STATE(278), - [sym_ident] = STATE(253), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(252), - [sym_call_expression] = STATE(278), - [sym_call_phrase] = STATE(272), - [sym_callable] = STATE(477), - [sym_paren_expression] = STATE(278), - [sym_unary_expression] = STATE(303), - [sym_singular_expression] = STATE(297), - [sym_multiplicative_expression] = STATE(290), - [sym_ident_pattern_token] = ACTIONS(305), - [anon_sym_true] = ACTIONS(307), - [anon_sym_false] = ACTIONS(307), - [aux_sym_decimal_int_literal_token1] = ACTIONS(309), - [aux_sym_decimal_int_literal_token2] = ACTIONS(309), - [sym_hex_int_literal] = ACTIONS(311), - [aux_sym_decimal_float_literal_token1] = ACTIONS(313), - [aux_sym_decimal_float_literal_token2] = ACTIONS(313), - [aux_sym_decimal_float_literal_token3] = ACTIONS(313), - [aux_sym_decimal_float_literal_token4] = ACTIONS(315), - [aux_sym_decimal_float_literal_token5] = ACTIONS(313), - [aux_sym_hex_float_literal_token1] = ACTIONS(317), - [aux_sym_hex_float_literal_token2] = ACTIONS(319), - [aux_sym_hex_float_literal_token3] = ACTIONS(317), - [anon_sym_LPAREN] = ACTIONS(321), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(323), - [anon_sym_DASH] = ACTIONS(325), - [anon_sym_BANG] = ACTIONS(325), - [anon_sym_TILDE] = ACTIONS(325), - [anon_sym_STAR] = ACTIONS(325), - [anon_sym_AMP] = ACTIONS(325), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [64] = { - [sym_bool_literal] = STATE(183), - [sym_int_literal] = STATE(183), - [sym_decimal_int_literal] = STATE(187), - [sym_float_literal] = STATE(183), - [sym_decimal_float_literal] = STATE(177), - [sym_hex_float_literal] = STATE(177), - [sym_literal] = STATE(176), - [sym_ident] = STATE(171), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(170), - [sym_call_expression] = STATE(176), - [sym_call_phrase] = STATE(180), - [sym_callable] = STATE(484), - [sym_paren_expression] = STATE(176), - [sym_unary_expression] = STATE(202), - [sym_singular_expression] = STATE(200), - [sym_multiplicative_expression] = STATE(193), - [sym_ident_pattern_token] = ACTIONS(327), - [anon_sym_true] = ACTIONS(329), - [anon_sym_false] = ACTIONS(329), - [aux_sym_decimal_int_literal_token1] = ACTIONS(331), - [aux_sym_decimal_int_literal_token2] = ACTIONS(331), - [sym_hex_int_literal] = ACTIONS(333), - [aux_sym_decimal_float_literal_token1] = ACTIONS(335), - [aux_sym_decimal_float_literal_token2] = ACTIONS(335), - [aux_sym_decimal_float_literal_token3] = ACTIONS(335), - [aux_sym_decimal_float_literal_token4] = ACTIONS(337), - [aux_sym_decimal_float_literal_token5] = ACTIONS(335), - [aux_sym_hex_float_literal_token1] = ACTIONS(339), - [aux_sym_hex_float_literal_token2] = ACTIONS(341), - [aux_sym_hex_float_literal_token3] = ACTIONS(339), - [anon_sym_LPAREN] = ACTIONS(343), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(345), - [anon_sym_DASH] = ACTIONS(347), - [anon_sym_BANG] = ACTIONS(347), - [anon_sym_TILDE] = ACTIONS(347), - [anon_sym_STAR] = ACTIONS(347), - [anon_sym_AMP] = ACTIONS(347), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [65] = { - [sym_bool_literal] = STATE(231), - [sym_int_literal] = STATE(231), - [sym_decimal_int_literal] = STATE(220), - [sym_float_literal] = STATE(231), - [sym_decimal_float_literal] = STATE(223), - [sym_hex_float_literal] = STATE(223), - [sym_literal] = STATE(245), - [sym_ident] = STATE(206), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(207), - [sym_call_expression] = STATE(245), - [sym_call_phrase] = STATE(237), - [sym_callable] = STATE(500), - [sym_paren_expression] = STATE(245), - [sym_unary_expression] = STATE(304), - [sym_singular_expression] = STATE(273), - [sym_ident_pattern_token] = ACTIONS(283), - [anon_sym_true] = ACTIONS(285), - [anon_sym_false] = ACTIONS(285), - [aux_sym_decimal_int_literal_token1] = ACTIONS(287), - [aux_sym_decimal_int_literal_token2] = ACTIONS(287), - [sym_hex_int_literal] = ACTIONS(289), - [aux_sym_decimal_float_literal_token1] = ACTIONS(291), - [aux_sym_decimal_float_literal_token2] = ACTIONS(291), - [aux_sym_decimal_float_literal_token3] = ACTIONS(291), - [aux_sym_decimal_float_literal_token4] = ACTIONS(293), - [aux_sym_decimal_float_literal_token5] = ACTIONS(291), - [aux_sym_hex_float_literal_token1] = ACTIONS(295), - [aux_sym_hex_float_literal_token2] = ACTIONS(297), - [aux_sym_hex_float_literal_token3] = ACTIONS(295), - [anon_sym_LPAREN] = ACTIONS(299), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(301), - [anon_sym_DASH] = ACTIONS(303), - [anon_sym_BANG] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(303), - [anon_sym_STAR] = ACTIONS(303), - [anon_sym_AMP] = ACTIONS(303), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [66] = { - [sym_bool_literal] = STATE(231), - [sym_int_literal] = STATE(231), - [sym_decimal_int_literal] = STATE(220), - [sym_float_literal] = STATE(231), - [sym_decimal_float_literal] = STATE(223), - [sym_hex_float_literal] = STATE(223), - [sym_literal] = STATE(245), - [sym_ident] = STATE(206), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(207), - [sym_call_expression] = STATE(245), - [sym_call_phrase] = STATE(237), - [sym_callable] = STATE(500), - [sym_paren_expression] = STATE(245), - [sym_unary_expression] = STATE(381), - [sym_singular_expression] = STATE(273), - [sym_ident_pattern_token] = ACTIONS(283), - [anon_sym_true] = ACTIONS(285), - [anon_sym_false] = ACTIONS(285), - [aux_sym_decimal_int_literal_token1] = ACTIONS(287), - [aux_sym_decimal_int_literal_token2] = ACTIONS(287), - [sym_hex_int_literal] = ACTIONS(289), - [aux_sym_decimal_float_literal_token1] = ACTIONS(291), - [aux_sym_decimal_float_literal_token2] = ACTIONS(291), - [aux_sym_decimal_float_literal_token3] = ACTIONS(291), - [aux_sym_decimal_float_literal_token4] = ACTIONS(293), - [aux_sym_decimal_float_literal_token5] = ACTIONS(291), - [aux_sym_hex_float_literal_token1] = ACTIONS(295), - [aux_sym_hex_float_literal_token2] = ACTIONS(297), - [aux_sym_hex_float_literal_token3] = ACTIONS(295), - [anon_sym_LPAREN] = ACTIONS(299), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(301), - [anon_sym_DASH] = ACTIONS(303), - [anon_sym_BANG] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(303), - [anon_sym_STAR] = ACTIONS(303), - [anon_sym_AMP] = ACTIONS(303), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [67] = { - [sym_bool_literal] = STATE(231), - [sym_int_literal] = STATE(231), - [sym_decimal_int_literal] = STATE(220), - [sym_float_literal] = STATE(231), - [sym_decimal_float_literal] = STATE(223), - [sym_hex_float_literal] = STATE(223), - [sym_literal] = STATE(245), - [sym_ident] = STATE(206), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(207), - [sym_call_expression] = STATE(245), - [sym_call_phrase] = STATE(237), - [sym_callable] = STATE(500), - [sym_paren_expression] = STATE(245), - [sym_unary_expression] = STATE(387), - [sym_singular_expression] = STATE(273), - [sym_ident_pattern_token] = ACTIONS(283), - [anon_sym_true] = ACTIONS(285), - [anon_sym_false] = ACTIONS(285), - [aux_sym_decimal_int_literal_token1] = ACTIONS(287), - [aux_sym_decimal_int_literal_token2] = ACTIONS(287), - [sym_hex_int_literal] = ACTIONS(289), - [aux_sym_decimal_float_literal_token1] = ACTIONS(291), - [aux_sym_decimal_float_literal_token2] = ACTIONS(291), - [aux_sym_decimal_float_literal_token3] = ACTIONS(291), - [aux_sym_decimal_float_literal_token4] = ACTIONS(293), - [aux_sym_decimal_float_literal_token5] = ACTIONS(291), - [aux_sym_hex_float_literal_token1] = ACTIONS(295), - [aux_sym_hex_float_literal_token2] = ACTIONS(297), - [aux_sym_hex_float_literal_token3] = ACTIONS(295), - [anon_sym_LPAREN] = ACTIONS(299), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(301), - [anon_sym_DASH] = ACTIONS(303), - [anon_sym_BANG] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(303), - [anon_sym_STAR] = ACTIONS(303), - [anon_sym_AMP] = ACTIONS(303), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [68] = { - [sym_bool_literal] = STATE(183), - [sym_int_literal] = STATE(183), - [sym_decimal_int_literal] = STATE(187), - [sym_float_literal] = STATE(183), - [sym_decimal_float_literal] = STATE(177), - [sym_hex_float_literal] = STATE(177), - [sym_literal] = STATE(176), - [sym_ident] = STATE(171), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(170), - [sym_call_expression] = STATE(176), - [sym_call_phrase] = STATE(180), - [sym_callable] = STATE(484), - [sym_paren_expression] = STATE(176), - [sym_unary_expression] = STATE(295), - [sym_singular_expression] = STATE(200), - [sym_ident_pattern_token] = ACTIONS(327), - [anon_sym_true] = ACTIONS(329), - [anon_sym_false] = ACTIONS(329), - [aux_sym_decimal_int_literal_token1] = ACTIONS(331), - [aux_sym_decimal_int_literal_token2] = ACTIONS(331), - [sym_hex_int_literal] = ACTIONS(333), - [aux_sym_decimal_float_literal_token1] = ACTIONS(335), - [aux_sym_decimal_float_literal_token2] = ACTIONS(335), - [aux_sym_decimal_float_literal_token3] = ACTIONS(335), - [aux_sym_decimal_float_literal_token4] = ACTIONS(337), - [aux_sym_decimal_float_literal_token5] = ACTIONS(335), - [aux_sym_hex_float_literal_token1] = ACTIONS(339), - [aux_sym_hex_float_literal_token2] = ACTIONS(341), - [aux_sym_hex_float_literal_token3] = ACTIONS(339), - [anon_sym_LPAREN] = ACTIONS(343), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(345), - [anon_sym_DASH] = ACTIONS(347), - [anon_sym_BANG] = ACTIONS(347), - [anon_sym_TILDE] = ACTIONS(347), - [anon_sym_STAR] = ACTIONS(347), - [anon_sym_AMP] = ACTIONS(347), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [69] = { - [sym_bool_literal] = STATE(231), - [sym_int_literal] = STATE(231), - [sym_decimal_int_literal] = STATE(220), - [sym_float_literal] = STATE(231), - [sym_decimal_float_literal] = STATE(223), - [sym_hex_float_literal] = STATE(223), - [sym_literal] = STATE(245), - [sym_ident] = STATE(206), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(207), - [sym_call_expression] = STATE(245), - [sym_call_phrase] = STATE(237), - [sym_callable] = STATE(500), - [sym_paren_expression] = STATE(245), - [sym_unary_expression] = STATE(358), - [sym_singular_expression] = STATE(273), - [sym_ident_pattern_token] = ACTIONS(283), - [anon_sym_true] = ACTIONS(285), - [anon_sym_false] = ACTIONS(285), - [aux_sym_decimal_int_literal_token1] = ACTIONS(287), - [aux_sym_decimal_int_literal_token2] = ACTIONS(287), - [sym_hex_int_literal] = ACTIONS(289), - [aux_sym_decimal_float_literal_token1] = ACTIONS(291), - [aux_sym_decimal_float_literal_token2] = ACTIONS(291), - [aux_sym_decimal_float_literal_token3] = ACTIONS(291), - [aux_sym_decimal_float_literal_token4] = ACTIONS(293), - [aux_sym_decimal_float_literal_token5] = ACTIONS(291), - [aux_sym_hex_float_literal_token1] = ACTIONS(295), - [aux_sym_hex_float_literal_token2] = ACTIONS(297), - [aux_sym_hex_float_literal_token3] = ACTIONS(295), - [anon_sym_LPAREN] = ACTIONS(299), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(301), - [anon_sym_DASH] = ACTIONS(303), - [anon_sym_BANG] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(303), - [anon_sym_STAR] = ACTIONS(303), - [anon_sym_AMP] = ACTIONS(303), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [70] = { - [sym_bool_literal] = STATE(243), - [sym_int_literal] = STATE(243), - [sym_decimal_int_literal] = STATE(236), - [sym_float_literal] = STATE(243), - [sym_decimal_float_literal] = STATE(232), - [sym_hex_float_literal] = STATE(232), - [sym_literal] = STATE(227), - [sym_ident] = STATE(210), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(213), - [sym_call_expression] = STATE(227), - [sym_call_phrase] = STATE(229), - [sym_callable] = STATE(480), - [sym_paren_expression] = STATE(227), - [sym_unary_expression] = STATE(264), - [sym_singular_expression] = STATE(262), - [sym_ident_pattern_token] = ACTIONS(261), - [anon_sym_true] = ACTIONS(263), - [anon_sym_false] = ACTIONS(263), - [aux_sym_decimal_int_literal_token1] = ACTIONS(265), - [aux_sym_decimal_int_literal_token2] = ACTIONS(265), - [sym_hex_int_literal] = ACTIONS(267), - [aux_sym_decimal_float_literal_token1] = ACTIONS(269), - [aux_sym_decimal_float_literal_token2] = ACTIONS(269), - [aux_sym_decimal_float_literal_token3] = ACTIONS(269), - [aux_sym_decimal_float_literal_token4] = ACTIONS(271), - [aux_sym_decimal_float_literal_token5] = ACTIONS(269), - [aux_sym_hex_float_literal_token1] = ACTIONS(273), - [aux_sym_hex_float_literal_token2] = ACTIONS(275), - [aux_sym_hex_float_literal_token3] = ACTIONS(273), - [anon_sym_LPAREN] = ACTIONS(277), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(279), - [anon_sym_DASH] = ACTIONS(281), - [anon_sym_BANG] = ACTIONS(281), - [anon_sym_TILDE] = ACTIONS(281), - [anon_sym_STAR] = ACTIONS(281), - [anon_sym_AMP] = ACTIONS(281), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [71] = { - [sym_bool_literal] = STATE(231), - [sym_int_literal] = STATE(231), - [sym_decimal_int_literal] = STATE(220), - [sym_float_literal] = STATE(231), - [sym_decimal_float_literal] = STATE(223), - [sym_hex_float_literal] = STATE(223), - [sym_literal] = STATE(245), - [sym_ident] = STATE(206), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(207), - [sym_call_expression] = STATE(245), - [sym_call_phrase] = STATE(237), - [sym_callable] = STATE(500), - [sym_paren_expression] = STATE(245), - [sym_unary_expression] = STATE(368), - [sym_singular_expression] = STATE(273), - [sym_ident_pattern_token] = ACTIONS(283), - [anon_sym_true] = ACTIONS(285), - [anon_sym_false] = ACTIONS(285), - [aux_sym_decimal_int_literal_token1] = ACTIONS(287), - [aux_sym_decimal_int_literal_token2] = ACTIONS(287), - [sym_hex_int_literal] = ACTIONS(289), - [aux_sym_decimal_float_literal_token1] = ACTIONS(291), - [aux_sym_decimal_float_literal_token2] = ACTIONS(291), - [aux_sym_decimal_float_literal_token3] = ACTIONS(291), - [aux_sym_decimal_float_literal_token4] = ACTIONS(293), - [aux_sym_decimal_float_literal_token5] = ACTIONS(291), - [aux_sym_hex_float_literal_token1] = ACTIONS(295), - [aux_sym_hex_float_literal_token2] = ACTIONS(297), - [aux_sym_hex_float_literal_token3] = ACTIONS(295), - [anon_sym_LPAREN] = ACTIONS(299), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(301), - [anon_sym_DASH] = ACTIONS(303), - [anon_sym_BANG] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(303), - [anon_sym_STAR] = ACTIONS(303), - [anon_sym_AMP] = ACTIONS(303), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [72] = { - [sym_bool_literal] = STATE(183), - [sym_int_literal] = STATE(183), - [sym_decimal_int_literal] = STATE(187), - [sym_float_literal] = STATE(183), - [sym_decimal_float_literal] = STATE(177), - [sym_hex_float_literal] = STATE(177), - [sym_literal] = STATE(176), - [sym_ident] = STATE(171), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(170), - [sym_call_expression] = STATE(176), - [sym_call_phrase] = STATE(180), - [sym_callable] = STATE(484), - [sym_paren_expression] = STATE(176), - [sym_unary_expression] = STATE(199), - [sym_singular_expression] = STATE(200), - [sym_ident_pattern_token] = ACTIONS(327), - [anon_sym_true] = ACTIONS(329), - [anon_sym_false] = ACTIONS(329), - [aux_sym_decimal_int_literal_token1] = ACTIONS(331), - [aux_sym_decimal_int_literal_token2] = ACTIONS(331), - [sym_hex_int_literal] = ACTIONS(333), - [aux_sym_decimal_float_literal_token1] = ACTIONS(335), - [aux_sym_decimal_float_literal_token2] = ACTIONS(335), - [aux_sym_decimal_float_literal_token3] = ACTIONS(335), - [aux_sym_decimal_float_literal_token4] = ACTIONS(337), - [aux_sym_decimal_float_literal_token5] = ACTIONS(335), - [aux_sym_hex_float_literal_token1] = ACTIONS(339), - [aux_sym_hex_float_literal_token2] = ACTIONS(341), - [aux_sym_hex_float_literal_token3] = ACTIONS(339), - [anon_sym_LPAREN] = ACTIONS(343), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(345), - [anon_sym_DASH] = ACTIONS(347), - [anon_sym_BANG] = ACTIONS(347), - [anon_sym_TILDE] = ACTIONS(347), - [anon_sym_STAR] = ACTIONS(347), - [anon_sym_AMP] = ACTIONS(347), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [73] = { - [sym_bool_literal] = STATE(183), - [sym_int_literal] = STATE(183), - [sym_decimal_int_literal] = STATE(187), - [sym_float_literal] = STATE(183), - [sym_decimal_float_literal] = STATE(177), - [sym_hex_float_literal] = STATE(177), - [sym_literal] = STATE(176), - [sym_ident] = STATE(171), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(170), - [sym_call_expression] = STATE(176), - [sym_call_phrase] = STATE(180), - [sym_callable] = STATE(484), - [sym_paren_expression] = STATE(176), - [sym_unary_expression] = STATE(196), - [sym_singular_expression] = STATE(200), - [sym_ident_pattern_token] = ACTIONS(327), - [anon_sym_true] = ACTIONS(329), - [anon_sym_false] = ACTIONS(329), - [aux_sym_decimal_int_literal_token1] = ACTIONS(331), - [aux_sym_decimal_int_literal_token2] = ACTIONS(331), - [sym_hex_int_literal] = ACTIONS(333), - [aux_sym_decimal_float_literal_token1] = ACTIONS(335), - [aux_sym_decimal_float_literal_token2] = ACTIONS(335), - [aux_sym_decimal_float_literal_token3] = ACTIONS(335), - [aux_sym_decimal_float_literal_token4] = ACTIONS(337), - [aux_sym_decimal_float_literal_token5] = ACTIONS(335), - [aux_sym_hex_float_literal_token1] = ACTIONS(339), - [aux_sym_hex_float_literal_token2] = ACTIONS(341), - [aux_sym_hex_float_literal_token3] = ACTIONS(339), - [anon_sym_LPAREN] = ACTIONS(343), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(345), - [anon_sym_DASH] = ACTIONS(347), - [anon_sym_BANG] = ACTIONS(347), - [anon_sym_TILDE] = ACTIONS(347), - [anon_sym_STAR] = ACTIONS(347), - [anon_sym_AMP] = ACTIONS(347), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [74] = { - [sym_bool_literal] = STATE(231), - [sym_int_literal] = STATE(231), - [sym_decimal_int_literal] = STATE(220), - [sym_float_literal] = STATE(231), - [sym_decimal_float_literal] = STATE(223), - [sym_hex_float_literal] = STATE(223), - [sym_literal] = STATE(245), - [sym_ident] = STATE(206), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(207), - [sym_call_expression] = STATE(245), - [sym_call_phrase] = STATE(237), - [sym_callable] = STATE(500), - [sym_paren_expression] = STATE(245), - [sym_unary_expression] = STATE(268), - [sym_singular_expression] = STATE(273), - [sym_ident_pattern_token] = ACTIONS(283), - [anon_sym_true] = ACTIONS(285), - [anon_sym_false] = ACTIONS(285), - [aux_sym_decimal_int_literal_token1] = ACTIONS(287), - [aux_sym_decimal_int_literal_token2] = ACTIONS(287), - [sym_hex_int_literal] = ACTIONS(289), - [aux_sym_decimal_float_literal_token1] = ACTIONS(291), - [aux_sym_decimal_float_literal_token2] = ACTIONS(291), - [aux_sym_decimal_float_literal_token3] = ACTIONS(291), - [aux_sym_decimal_float_literal_token4] = ACTIONS(293), - [aux_sym_decimal_float_literal_token5] = ACTIONS(291), - [aux_sym_hex_float_literal_token1] = ACTIONS(295), - [aux_sym_hex_float_literal_token2] = ACTIONS(297), - [aux_sym_hex_float_literal_token3] = ACTIONS(295), - [anon_sym_LPAREN] = ACTIONS(299), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(301), - [anon_sym_DASH] = ACTIONS(303), - [anon_sym_BANG] = ACTIONS(303), - [anon_sym_TILDE] = ACTIONS(303), - [anon_sym_STAR] = ACTIONS(303), - [anon_sym_AMP] = ACTIONS(303), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [75] = { - [sym_bool_literal] = STATE(283), - [sym_int_literal] = STATE(283), - [sym_decimal_int_literal] = STATE(287), - [sym_float_literal] = STATE(283), - [sym_decimal_float_literal] = STATE(259), - [sym_hex_float_literal] = STATE(259), - [sym_literal] = STATE(278), - [sym_ident] = STATE(253), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(252), - [sym_call_expression] = STATE(278), - [sym_call_phrase] = STATE(272), - [sym_callable] = STATE(477), - [sym_paren_expression] = STATE(278), - [sym_unary_expression] = STATE(358), - [sym_singular_expression] = STATE(297), - [sym_ident_pattern_token] = ACTIONS(305), - [anon_sym_true] = ACTIONS(307), - [anon_sym_false] = ACTIONS(307), - [aux_sym_decimal_int_literal_token1] = ACTIONS(309), - [aux_sym_decimal_int_literal_token2] = ACTIONS(309), - [sym_hex_int_literal] = ACTIONS(311), - [aux_sym_decimal_float_literal_token1] = ACTIONS(313), - [aux_sym_decimal_float_literal_token2] = ACTIONS(313), - [aux_sym_decimal_float_literal_token3] = ACTIONS(313), - [aux_sym_decimal_float_literal_token4] = ACTIONS(315), - [aux_sym_decimal_float_literal_token5] = ACTIONS(313), - [aux_sym_hex_float_literal_token1] = ACTIONS(317), - [aux_sym_hex_float_literal_token2] = ACTIONS(319), - [aux_sym_hex_float_literal_token3] = ACTIONS(317), - [anon_sym_LPAREN] = ACTIONS(321), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(323), - [anon_sym_DASH] = ACTIONS(325), - [anon_sym_BANG] = ACTIONS(325), - [anon_sym_TILDE] = ACTIONS(325), - [anon_sym_STAR] = ACTIONS(325), - [anon_sym_AMP] = ACTIONS(325), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [76] = { - [sym_bool_literal] = STATE(339), - [sym_int_literal] = STATE(339), - [sym_decimal_int_literal] = STATE(336), - [sym_float_literal] = STATE(339), - [sym_decimal_float_literal] = STATE(332), - [sym_hex_float_literal] = STATE(332), - [sym_literal] = STATE(329), - [sym_ident] = STATE(314), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(311), - [sym_call_expression] = STATE(329), - [sym_call_phrase] = STATE(324), - [sym_callable] = STATE(473), - [sym_paren_expression] = STATE(329), - [sym_unary_expression] = STATE(351), - [sym_singular_expression] = STATE(350), - [sym_ident_pattern_token] = ACTIONS(239), - [anon_sym_true] = ACTIONS(241), - [anon_sym_false] = ACTIONS(241), - [aux_sym_decimal_int_literal_token1] = ACTIONS(243), - [aux_sym_decimal_int_literal_token2] = ACTIONS(243), - [sym_hex_int_literal] = ACTIONS(245), - [aux_sym_decimal_float_literal_token1] = ACTIONS(247), - [aux_sym_decimal_float_literal_token2] = ACTIONS(247), - [aux_sym_decimal_float_literal_token3] = ACTIONS(247), - [aux_sym_decimal_float_literal_token4] = ACTIONS(249), - [aux_sym_decimal_float_literal_token5] = ACTIONS(247), - [aux_sym_hex_float_literal_token1] = ACTIONS(251), - [aux_sym_hex_float_literal_token2] = ACTIONS(253), - [aux_sym_hex_float_literal_token3] = ACTIONS(251), - [anon_sym_LPAREN] = ACTIONS(255), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(257), - [anon_sym_DASH] = ACTIONS(259), - [anon_sym_BANG] = ACTIONS(259), - [anon_sym_TILDE] = ACTIONS(259), - [anon_sym_STAR] = ACTIONS(259), - [anon_sym_AMP] = ACTIONS(259), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [77] = { - [sym_bool_literal] = STATE(339), - [sym_int_literal] = STATE(339), - [sym_decimal_int_literal] = STATE(336), - [sym_float_literal] = STATE(339), - [sym_decimal_float_literal] = STATE(332), - [sym_hex_float_literal] = STATE(332), - [sym_literal] = STATE(329), - [sym_ident] = STATE(314), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(311), - [sym_call_expression] = STATE(329), - [sym_call_phrase] = STATE(324), - [sym_callable] = STATE(473), - [sym_paren_expression] = STATE(329), - [sym_unary_expression] = STATE(389), - [sym_singular_expression] = STATE(350), - [sym_ident_pattern_token] = ACTIONS(239), - [anon_sym_true] = ACTIONS(241), - [anon_sym_false] = ACTIONS(241), - [aux_sym_decimal_int_literal_token1] = ACTIONS(243), - [aux_sym_decimal_int_literal_token2] = ACTIONS(243), - [sym_hex_int_literal] = ACTIONS(245), - [aux_sym_decimal_float_literal_token1] = ACTIONS(247), - [aux_sym_decimal_float_literal_token2] = ACTIONS(247), - [aux_sym_decimal_float_literal_token3] = ACTIONS(247), - [aux_sym_decimal_float_literal_token4] = ACTIONS(249), - [aux_sym_decimal_float_literal_token5] = ACTIONS(247), - [aux_sym_hex_float_literal_token1] = ACTIONS(251), - [aux_sym_hex_float_literal_token2] = ACTIONS(253), - [aux_sym_hex_float_literal_token3] = ACTIONS(251), - [anon_sym_LPAREN] = ACTIONS(255), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(257), - [anon_sym_DASH] = ACTIONS(259), - [anon_sym_BANG] = ACTIONS(259), - [anon_sym_TILDE] = ACTIONS(259), - [anon_sym_STAR] = ACTIONS(259), - [anon_sym_AMP] = ACTIONS(259), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [78] = { - [sym_bool_literal] = STATE(283), - [sym_int_literal] = STATE(283), - [sym_decimal_int_literal] = STATE(287), - [sym_float_literal] = STATE(283), - [sym_decimal_float_literal] = STATE(259), - [sym_hex_float_literal] = STATE(259), - [sym_literal] = STATE(278), - [sym_ident] = STATE(253), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(252), - [sym_call_expression] = STATE(278), - [sym_call_phrase] = STATE(272), - [sym_callable] = STATE(477), - [sym_paren_expression] = STATE(278), - [sym_unary_expression] = STATE(304), - [sym_singular_expression] = STATE(297), - [sym_ident_pattern_token] = ACTIONS(305), - [anon_sym_true] = ACTIONS(307), - [anon_sym_false] = ACTIONS(307), - [aux_sym_decimal_int_literal_token1] = ACTIONS(309), - [aux_sym_decimal_int_literal_token2] = ACTIONS(309), - [sym_hex_int_literal] = ACTIONS(311), - [aux_sym_decimal_float_literal_token1] = ACTIONS(313), - [aux_sym_decimal_float_literal_token2] = ACTIONS(313), - [aux_sym_decimal_float_literal_token3] = ACTIONS(313), - [aux_sym_decimal_float_literal_token4] = ACTIONS(315), - [aux_sym_decimal_float_literal_token5] = ACTIONS(313), - [aux_sym_hex_float_literal_token1] = ACTIONS(317), - [aux_sym_hex_float_literal_token2] = ACTIONS(319), - [aux_sym_hex_float_literal_token3] = ACTIONS(317), - [anon_sym_LPAREN] = ACTIONS(321), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(323), - [anon_sym_DASH] = ACTIONS(325), - [anon_sym_BANG] = ACTIONS(325), - [anon_sym_TILDE] = ACTIONS(325), - [anon_sym_STAR] = ACTIONS(325), - [anon_sym_AMP] = ACTIONS(325), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [79] = { - [sym_bool_literal] = STATE(283), - [sym_int_literal] = STATE(283), - [sym_decimal_int_literal] = STATE(287), - [sym_float_literal] = STATE(283), - [sym_decimal_float_literal] = STATE(259), - [sym_hex_float_literal] = STATE(259), - [sym_literal] = STATE(278), - [sym_ident] = STATE(253), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(252), - [sym_call_expression] = STATE(278), - [sym_call_phrase] = STATE(272), - [sym_callable] = STATE(477), - [sym_paren_expression] = STATE(278), - [sym_unary_expression] = STATE(306), - [sym_singular_expression] = STATE(297), - [sym_ident_pattern_token] = ACTIONS(305), - [anon_sym_true] = ACTIONS(307), - [anon_sym_false] = ACTIONS(307), - [aux_sym_decimal_int_literal_token1] = ACTIONS(309), - [aux_sym_decimal_int_literal_token2] = ACTIONS(309), - [sym_hex_int_literal] = ACTIONS(311), - [aux_sym_decimal_float_literal_token1] = ACTIONS(313), - [aux_sym_decimal_float_literal_token2] = ACTIONS(313), - [aux_sym_decimal_float_literal_token3] = ACTIONS(313), - [aux_sym_decimal_float_literal_token4] = ACTIONS(315), - [aux_sym_decimal_float_literal_token5] = ACTIONS(313), - [aux_sym_hex_float_literal_token1] = ACTIONS(317), - [aux_sym_hex_float_literal_token2] = ACTIONS(319), - [aux_sym_hex_float_literal_token3] = ACTIONS(317), - [anon_sym_LPAREN] = ACTIONS(321), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(323), - [anon_sym_DASH] = ACTIONS(325), - [anon_sym_BANG] = ACTIONS(325), - [anon_sym_TILDE] = ACTIONS(325), - [anon_sym_STAR] = ACTIONS(325), - [anon_sym_AMP] = ACTIONS(325), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [80] = { - [sym_bool_literal] = STATE(160), - [sym_int_literal] = STATE(160), - [sym_decimal_int_literal] = STATE(149), - [sym_float_literal] = STATE(160), - [sym_decimal_float_literal] = STATE(148), - [sym_hex_float_literal] = STATE(148), - [sym_literal] = STATE(146), - [sym_ident] = STATE(140), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(144), - [sym_call_expression] = STATE(146), - [sym_call_phrase] = STATE(158), - [sym_callable] = STATE(476), - [sym_paren_expression] = STATE(146), - [sym_unary_expression] = STATE(167), - [sym_singular_expression] = STATE(165), - [sym_ident_pattern_token] = ACTIONS(27), - [anon_sym_true] = ACTIONS(29), - [anon_sym_false] = ACTIONS(29), - [aux_sym_decimal_int_literal_token1] = ACTIONS(31), - [aux_sym_decimal_int_literal_token2] = ACTIONS(31), - [sym_hex_int_literal] = ACTIONS(33), - [aux_sym_decimal_float_literal_token1] = ACTIONS(35), - [aux_sym_decimal_float_literal_token2] = ACTIONS(35), - [aux_sym_decimal_float_literal_token3] = ACTIONS(35), - [aux_sym_decimal_float_literal_token4] = ACTIONS(37), - [aux_sym_decimal_float_literal_token5] = ACTIONS(35), - [aux_sym_hex_float_literal_token1] = ACTIONS(39), - [aux_sym_hex_float_literal_token2] = ACTIONS(41), - [aux_sym_hex_float_literal_token3] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(43), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(69), - [anon_sym_DASH] = ACTIONS(71), - [anon_sym_BANG] = ACTIONS(71), - [anon_sym_TILDE] = ACTIONS(71), - [anon_sym_STAR] = ACTIONS(71), - [anon_sym_AMP] = ACTIONS(71), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [81] = { - [sym_bool_literal] = STATE(339), - [sym_int_literal] = STATE(339), - [sym_decimal_int_literal] = STATE(336), - [sym_float_literal] = STATE(339), - [sym_decimal_float_literal] = STATE(332), - [sym_hex_float_literal] = STATE(332), - [sym_literal] = STATE(329), - [sym_ident] = STATE(314), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(311), - [sym_call_expression] = STATE(329), - [sym_call_phrase] = STATE(324), - [sym_callable] = STATE(473), - [sym_paren_expression] = STATE(329), - [sym_unary_expression] = STATE(449), - [sym_singular_expression] = STATE(350), - [sym_ident_pattern_token] = ACTIONS(239), - [anon_sym_true] = ACTIONS(241), - [anon_sym_false] = ACTIONS(241), - [aux_sym_decimal_int_literal_token1] = ACTIONS(243), - [aux_sym_decimal_int_literal_token2] = ACTIONS(243), - [sym_hex_int_literal] = ACTIONS(245), - [aux_sym_decimal_float_literal_token1] = ACTIONS(247), - [aux_sym_decimal_float_literal_token2] = ACTIONS(247), - [aux_sym_decimal_float_literal_token3] = ACTIONS(247), - [aux_sym_decimal_float_literal_token4] = ACTIONS(249), - [aux_sym_decimal_float_literal_token5] = ACTIONS(247), - [aux_sym_hex_float_literal_token1] = ACTIONS(251), - [aux_sym_hex_float_literal_token2] = ACTIONS(253), - [aux_sym_hex_float_literal_token3] = ACTIONS(251), - [anon_sym_LPAREN] = ACTIONS(255), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(257), - [anon_sym_DASH] = ACTIONS(259), - [anon_sym_BANG] = ACTIONS(259), - [anon_sym_TILDE] = ACTIONS(259), - [anon_sym_STAR] = ACTIONS(259), - [anon_sym_AMP] = ACTIONS(259), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [82] = { - [sym_bool_literal] = STATE(339), - [sym_int_literal] = STATE(339), - [sym_decimal_int_literal] = STATE(336), - [sym_float_literal] = STATE(339), - [sym_decimal_float_literal] = STATE(332), - [sym_hex_float_literal] = STATE(332), - [sym_literal] = STATE(329), - [sym_ident] = STATE(314), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(311), - [sym_call_expression] = STATE(329), - [sym_call_phrase] = STATE(324), - [sym_callable] = STATE(473), - [sym_paren_expression] = STATE(329), - [sym_unary_expression] = STATE(502), - [sym_singular_expression] = STATE(350), - [sym_ident_pattern_token] = ACTIONS(239), - [anon_sym_true] = ACTIONS(241), - [anon_sym_false] = ACTIONS(241), - [aux_sym_decimal_int_literal_token1] = ACTIONS(243), - [aux_sym_decimal_int_literal_token2] = ACTIONS(243), - [sym_hex_int_literal] = ACTIONS(245), - [aux_sym_decimal_float_literal_token1] = ACTIONS(247), - [aux_sym_decimal_float_literal_token2] = ACTIONS(247), - [aux_sym_decimal_float_literal_token3] = ACTIONS(247), - [aux_sym_decimal_float_literal_token4] = ACTIONS(249), - [aux_sym_decimal_float_literal_token5] = ACTIONS(247), - [aux_sym_hex_float_literal_token1] = ACTIONS(251), - [aux_sym_hex_float_literal_token2] = ACTIONS(253), - [aux_sym_hex_float_literal_token3] = ACTIONS(251), - [anon_sym_LPAREN] = ACTIONS(255), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(257), - [anon_sym_DASH] = ACTIONS(259), - [anon_sym_BANG] = ACTIONS(259), - [anon_sym_TILDE] = ACTIONS(259), - [anon_sym_STAR] = ACTIONS(259), - [anon_sym_AMP] = ACTIONS(259), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [83] = { - [sym_bool_literal] = STATE(339), - [sym_int_literal] = STATE(339), - [sym_decimal_int_literal] = STATE(336), - [sym_float_literal] = STATE(339), - [sym_decimal_float_literal] = STATE(332), - [sym_hex_float_literal] = STATE(332), - [sym_literal] = STATE(329), - [sym_ident] = STATE(314), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_primary_expression] = STATE(311), - [sym_call_expression] = STATE(329), - [sym_call_phrase] = STATE(324), - [sym_callable] = STATE(473), - [sym_paren_expression] = STATE(329), - [sym_unary_expression] = STATE(450), - [sym_singular_expression] = STATE(350), - [sym_ident_pattern_token] = ACTIONS(239), - [anon_sym_true] = ACTIONS(241), - [anon_sym_false] = ACTIONS(241), - [aux_sym_decimal_int_literal_token1] = ACTIONS(243), - [aux_sym_decimal_int_literal_token2] = ACTIONS(243), - [sym_hex_int_literal] = ACTIONS(245), - [aux_sym_decimal_float_literal_token1] = ACTIONS(247), - [aux_sym_decimal_float_literal_token2] = ACTIONS(247), - [aux_sym_decimal_float_literal_token3] = ACTIONS(247), - [aux_sym_decimal_float_literal_token4] = ACTIONS(249), - [aux_sym_decimal_float_literal_token5] = ACTIONS(247), - [aux_sym_hex_float_literal_token1] = ACTIONS(251), - [aux_sym_hex_float_literal_token2] = ACTIONS(253), - [aux_sym_hex_float_literal_token3] = ACTIONS(251), - [anon_sym_LPAREN] = ACTIONS(255), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_bitcast] = ACTIONS(257), - [anon_sym_DASH] = ACTIONS(259), - [anon_sym_BANG] = ACTIONS(259), - [anon_sym_TILDE] = ACTIONS(259), - [anon_sym_STAR] = ACTIONS(259), - [anon_sym_AMP] = ACTIONS(259), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [84] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_variable_statement] = STATE(564), - [sym_variable_decl] = STATE(521), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_for_header] = STATE(570), - [sym_for_init] = STATE(571), - [sym_func_call_statement] = STATE(564), - [sym_variable_updating_statement] = STATE(564), - [sym_ident_pattern_token] = ACTIONS(101), - [anon_sym_SEMI] = ACTIONS(349), - [anon_sym_LPAREN] = ACTIONS(105), - [anon_sym_const] = ACTIONS(107), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_let] = ACTIONS(107), - [anon_sym_var] = ACTIONS(113), - [anon_sym_STAR] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(115), - [anon_sym__] = ACTIONS(117), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [85] = { - [ts_builtin_sym_end] = ACTIONS(351), - [sym_ident_pattern_token] = ACTIONS(353), - [anon_sym_SEMI] = ACTIONS(351), - [anon_sym_AT] = ACTIONS(351), - [anon_sym_LPAREN] = ACTIONS(351), - [anon_sym_const] = ACTIONS(353), - [anon_sym_array] = ACTIONS(353), - [anon_sym_struct] = ACTIONS(353), - [anon_sym_LBRACE] = ACTIONS(351), - [anon_sym_RBRACE] = ACTIONS(351), - [anon_sym_sampler] = ACTIONS(353), - [anon_sym_sampler_comparison] = ACTIONS(353), - [anon_sym_texture_1d] = ACTIONS(353), - [anon_sym_texture_2d] = ACTIONS(353), - [anon_sym_texture_2d_array] = ACTIONS(353), - [anon_sym_texture_3d] = ACTIONS(353), - [anon_sym_texture_cube] = ACTIONS(353), - [anon_sym_texture_cube_array] = ACTIONS(353), - [sym_multisampled_texture_type] = ACTIONS(353), - [anon_sym_texture_storage_1d] = ACTIONS(353), - [anon_sym_texture_storage_2d] = ACTIONS(353), - [anon_sym_texture_storage_2d_array] = ACTIONS(353), - [anon_sym_texture_storage_3d] = ACTIONS(353), - [anon_sym_texture_depth_2d] = ACTIONS(353), - [anon_sym_texture_depth_2d_array] = ACTIONS(353), - [anon_sym_texture_depth_cube] = ACTIONS(353), - [anon_sym_texture_depth_cube_array] = ACTIONS(353), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(353), - [anon_sym_alias] = ACTIONS(353), - [anon_sym_bool] = ACTIONS(353), - [anon_sym_f32] = ACTIONS(353), - [anon_sym_f16] = ACTIONS(353), - [anon_sym_i32] = ACTIONS(353), - [anon_sym_u32] = ACTIONS(353), - [anon_sym_ptr] = ACTIONS(353), - [anon_sym_atomic] = ACTIONS(353), - [anon_sym_vec2] = ACTIONS(353), - [anon_sym_vec3] = ACTIONS(353), - [anon_sym_vec4] = ACTIONS(353), - [anon_sym_mat2x2] = ACTIONS(353), - [anon_sym_mat2x3] = ACTIONS(353), - [anon_sym_mat2x4] = ACTIONS(353), - [anon_sym_mat3x2] = ACTIONS(353), - [anon_sym_mat3x3] = ACTIONS(353), - [anon_sym_mat3x4] = ACTIONS(353), - [anon_sym_mat4x2] = ACTIONS(353), - [anon_sym_mat4x3] = ACTIONS(353), - [anon_sym_mat4x4] = ACTIONS(353), - [anon_sym_let] = ACTIONS(353), - [anon_sym_var] = ACTIONS(353), - [anon_sym_override] = ACTIONS(353), - [anon_sym_STAR] = ACTIONS(351), - [anon_sym_AMP] = ACTIONS(351), - [anon_sym__] = ACTIONS(353), - [anon_sym_if] = ACTIONS(353), - [anon_sym_else] = ACTIONS(353), - [anon_sym_switch] = ACTIONS(353), - [anon_sym_case] = ACTIONS(353), - [anon_sym_default] = ACTIONS(353), - [anon_sym_loop] = ACTIONS(353), - [anon_sym_for] = ACTIONS(353), - [anon_sym_while] = ACTIONS(353), - [anon_sym_break] = ACTIONS(353), - [sym_continue_statement] = ACTIONS(353), - [anon_sym_continuing] = ACTIONS(353), - [anon_sym_return] = ACTIONS(353), - [anon_sym_const_assert] = ACTIONS(353), - [anon_sym_discard] = ACTIONS(353), - [anon_sym_fn] = ACTIONS(353), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [86] = { - [ts_builtin_sym_end] = ACTIONS(355), - [sym_ident_pattern_token] = ACTIONS(357), - [anon_sym_SEMI] = ACTIONS(355), - [anon_sym_AT] = ACTIONS(355), - [anon_sym_LPAREN] = ACTIONS(355), - [anon_sym_const] = ACTIONS(357), - [anon_sym_array] = ACTIONS(357), - [anon_sym_struct] = ACTIONS(357), - [anon_sym_LBRACE] = ACTIONS(355), - [anon_sym_RBRACE] = ACTIONS(355), - [anon_sym_sampler] = ACTIONS(357), - [anon_sym_sampler_comparison] = ACTIONS(357), - [anon_sym_texture_1d] = ACTIONS(357), - [anon_sym_texture_2d] = ACTIONS(357), - [anon_sym_texture_2d_array] = ACTIONS(357), - [anon_sym_texture_3d] = ACTIONS(357), - [anon_sym_texture_cube] = ACTIONS(357), - [anon_sym_texture_cube_array] = ACTIONS(357), - [sym_multisampled_texture_type] = ACTIONS(357), - [anon_sym_texture_storage_1d] = ACTIONS(357), - [anon_sym_texture_storage_2d] = ACTIONS(357), - [anon_sym_texture_storage_2d_array] = ACTIONS(357), - [anon_sym_texture_storage_3d] = ACTIONS(357), - [anon_sym_texture_depth_2d] = ACTIONS(357), - [anon_sym_texture_depth_2d_array] = ACTIONS(357), - [anon_sym_texture_depth_cube] = ACTIONS(357), - [anon_sym_texture_depth_cube_array] = ACTIONS(357), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(357), - [anon_sym_alias] = ACTIONS(357), - [anon_sym_bool] = ACTIONS(357), - [anon_sym_f32] = ACTIONS(357), - [anon_sym_f16] = ACTIONS(357), - [anon_sym_i32] = ACTIONS(357), - [anon_sym_u32] = ACTIONS(357), - [anon_sym_ptr] = ACTIONS(357), - [anon_sym_atomic] = ACTIONS(357), - [anon_sym_vec2] = ACTIONS(357), - [anon_sym_vec3] = ACTIONS(357), - [anon_sym_vec4] = ACTIONS(357), - [anon_sym_mat2x2] = ACTIONS(357), - [anon_sym_mat2x3] = ACTIONS(357), - [anon_sym_mat2x4] = ACTIONS(357), - [anon_sym_mat3x2] = ACTIONS(357), - [anon_sym_mat3x3] = ACTIONS(357), - [anon_sym_mat3x4] = ACTIONS(357), - [anon_sym_mat4x2] = ACTIONS(357), - [anon_sym_mat4x3] = ACTIONS(357), - [anon_sym_mat4x4] = ACTIONS(357), - [anon_sym_let] = ACTIONS(357), - [anon_sym_var] = ACTIONS(357), - [anon_sym_override] = ACTIONS(357), - [anon_sym_STAR] = ACTIONS(355), - [anon_sym_AMP] = ACTIONS(355), - [anon_sym__] = ACTIONS(357), - [anon_sym_if] = ACTIONS(357), - [anon_sym_else] = ACTIONS(357), - [anon_sym_switch] = ACTIONS(357), - [anon_sym_case] = ACTIONS(357), - [anon_sym_default] = ACTIONS(357), - [anon_sym_loop] = ACTIONS(357), - [anon_sym_for] = ACTIONS(357), - [anon_sym_while] = ACTIONS(357), - [anon_sym_break] = ACTIONS(357), - [sym_continue_statement] = ACTIONS(357), - [anon_sym_continuing] = ACTIONS(357), - [anon_sym_return] = ACTIONS(357), - [anon_sym_const_assert] = ACTIONS(357), - [anon_sym_discard] = ACTIONS(357), - [anon_sym_fn] = ACTIONS(357), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [87] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_for_update] = STATE(635), - [sym_func_call_statement] = STATE(643), - [sym_variable_updating_statement] = STATE(643), - [sym_ident_pattern_token] = ACTIONS(101), - [anon_sym_LPAREN] = ACTIONS(105), - [anon_sym_RPAREN] = ACTIONS(359), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_STAR] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(115), - [anon_sym__] = ACTIONS(117), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [88] = { - [sym_else_if_clause] = STATE(90), - [sym_else_clause] = STATE(95), - [aux_sym_if_statement_repeat1] = STATE(90), - [sym_ident_pattern_token] = ACTIONS(361), - [anon_sym_SEMI] = ACTIONS(363), - [anon_sym_LPAREN] = ACTIONS(363), - [anon_sym_const] = ACTIONS(361), - [anon_sym_array] = ACTIONS(361), - [anon_sym_LBRACE] = ACTIONS(363), - [anon_sym_RBRACE] = ACTIONS(363), - [anon_sym_sampler] = ACTIONS(361), - [anon_sym_sampler_comparison] = ACTIONS(361), - [anon_sym_texture_1d] = ACTIONS(361), - [anon_sym_texture_2d] = ACTIONS(361), - [anon_sym_texture_2d_array] = ACTIONS(361), - [anon_sym_texture_3d] = ACTIONS(361), - [anon_sym_texture_cube] = ACTIONS(361), - [anon_sym_texture_cube_array] = ACTIONS(361), - [sym_multisampled_texture_type] = ACTIONS(361), - [anon_sym_texture_storage_1d] = ACTIONS(361), - [anon_sym_texture_storage_2d] = ACTIONS(361), - [anon_sym_texture_storage_2d_array] = ACTIONS(361), - [anon_sym_texture_storage_3d] = ACTIONS(361), - [anon_sym_texture_depth_2d] = ACTIONS(361), - [anon_sym_texture_depth_2d_array] = ACTIONS(361), - [anon_sym_texture_depth_cube] = ACTIONS(361), - [anon_sym_texture_depth_cube_array] = ACTIONS(361), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(361), - [anon_sym_bool] = ACTIONS(361), - [anon_sym_f32] = ACTIONS(361), - [anon_sym_f16] = ACTIONS(361), - [anon_sym_i32] = ACTIONS(361), - [anon_sym_u32] = ACTIONS(361), - [anon_sym_ptr] = ACTIONS(361), - [anon_sym_atomic] = ACTIONS(361), - [anon_sym_vec2] = ACTIONS(361), - [anon_sym_vec3] = ACTIONS(361), - [anon_sym_vec4] = ACTIONS(361), - [anon_sym_mat2x2] = ACTIONS(361), - [anon_sym_mat2x3] = ACTIONS(361), - [anon_sym_mat2x4] = ACTIONS(361), - [anon_sym_mat3x2] = ACTIONS(361), - [anon_sym_mat3x3] = ACTIONS(361), - [anon_sym_mat3x4] = ACTIONS(361), - [anon_sym_mat4x2] = ACTIONS(361), - [anon_sym_mat4x3] = ACTIONS(361), - [anon_sym_mat4x4] = ACTIONS(361), - [anon_sym_let] = ACTIONS(361), - [anon_sym_var] = ACTIONS(361), - [anon_sym_STAR] = ACTIONS(363), - [anon_sym_AMP] = ACTIONS(363), - [anon_sym__] = ACTIONS(361), - [anon_sym_if] = ACTIONS(361), - [anon_sym_else] = ACTIONS(365), - [anon_sym_switch] = ACTIONS(361), - [anon_sym_loop] = ACTIONS(361), - [anon_sym_for] = ACTIONS(361), - [anon_sym_while] = ACTIONS(361), - [anon_sym_break] = ACTIONS(361), - [sym_continue_statement] = ACTIONS(361), - [anon_sym_continuing] = ACTIONS(361), - [anon_sym_return] = ACTIONS(361), - [anon_sym_const_assert] = ACTIONS(361), - [anon_sym_discard] = ACTIONS(361), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [89] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_for_update] = STATE(550), - [sym_func_call_statement] = STATE(643), - [sym_variable_updating_statement] = STATE(643), - [sym_ident_pattern_token] = ACTIONS(101), - [anon_sym_LPAREN] = ACTIONS(105), - [anon_sym_RPAREN] = ACTIONS(367), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_STAR] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(115), - [anon_sym__] = ACTIONS(117), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [90] = { - [sym_else_if_clause] = STATE(92), - [sym_else_clause] = STATE(102), - [aux_sym_if_statement_repeat1] = STATE(92), - [sym_ident_pattern_token] = ACTIONS(369), - [anon_sym_SEMI] = ACTIONS(371), - [anon_sym_LPAREN] = ACTIONS(371), - [anon_sym_const] = ACTIONS(369), - [anon_sym_array] = ACTIONS(369), - [anon_sym_LBRACE] = ACTIONS(371), - [anon_sym_RBRACE] = ACTIONS(371), - [anon_sym_sampler] = ACTIONS(369), - [anon_sym_sampler_comparison] = ACTIONS(369), - [anon_sym_texture_1d] = ACTIONS(369), - [anon_sym_texture_2d] = ACTIONS(369), - [anon_sym_texture_2d_array] = ACTIONS(369), - [anon_sym_texture_3d] = ACTIONS(369), - [anon_sym_texture_cube] = ACTIONS(369), - [anon_sym_texture_cube_array] = ACTIONS(369), - [sym_multisampled_texture_type] = ACTIONS(369), - [anon_sym_texture_storage_1d] = ACTIONS(369), - [anon_sym_texture_storage_2d] = ACTIONS(369), - [anon_sym_texture_storage_2d_array] = ACTIONS(369), - [anon_sym_texture_storage_3d] = ACTIONS(369), - [anon_sym_texture_depth_2d] = ACTIONS(369), - [anon_sym_texture_depth_2d_array] = ACTIONS(369), - [anon_sym_texture_depth_cube] = ACTIONS(369), - [anon_sym_texture_depth_cube_array] = ACTIONS(369), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(369), - [anon_sym_bool] = ACTIONS(369), - [anon_sym_f32] = ACTIONS(369), - [anon_sym_f16] = ACTIONS(369), - [anon_sym_i32] = ACTIONS(369), - [anon_sym_u32] = ACTIONS(369), - [anon_sym_ptr] = ACTIONS(369), - [anon_sym_atomic] = ACTIONS(369), - [anon_sym_vec2] = ACTIONS(369), - [anon_sym_vec3] = ACTIONS(369), - [anon_sym_vec4] = ACTIONS(369), - [anon_sym_mat2x2] = ACTIONS(369), - [anon_sym_mat2x3] = ACTIONS(369), - [anon_sym_mat2x4] = ACTIONS(369), - [anon_sym_mat3x2] = ACTIONS(369), - [anon_sym_mat3x3] = ACTIONS(369), - [anon_sym_mat3x4] = ACTIONS(369), - [anon_sym_mat4x2] = ACTIONS(369), - [anon_sym_mat4x3] = ACTIONS(369), - [anon_sym_mat4x4] = ACTIONS(369), - [anon_sym_let] = ACTIONS(369), - [anon_sym_var] = ACTIONS(369), - [anon_sym_STAR] = ACTIONS(371), - [anon_sym_AMP] = ACTIONS(371), - [anon_sym__] = ACTIONS(369), - [anon_sym_if] = ACTIONS(369), - [anon_sym_else] = ACTIONS(365), - [anon_sym_switch] = ACTIONS(369), - [anon_sym_loop] = ACTIONS(369), - [anon_sym_for] = ACTIONS(369), - [anon_sym_while] = ACTIONS(369), - [anon_sym_break] = ACTIONS(369), - [sym_continue_statement] = ACTIONS(369), - [anon_sym_continuing] = ACTIONS(369), - [anon_sym_return] = ACTIONS(369), - [anon_sym_const_assert] = ACTIONS(369), - [anon_sym_discard] = ACTIONS(369), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [91] = { - [sym_ident] = STATE(249), - [sym_array_type_specifier] = STATE(361), - [sym_texture_and_sampler_types] = STATE(361), - [sym_sampler_type] = STATE(372), - [sym_sampled_texture_type] = STATE(626), - [sym_storage_texture_type] = STATE(615), - [sym_depth_texture_type] = STATE(372), - [sym_type_specifier_without_ident] = STATE(614), - [sym_vec_prefix] = STATE(608), - [sym_mat_prefix] = STATE(608), - [sym_call_phrase] = STATE(516), - [sym_callable] = STATE(500), - [sym_lhs_expression] = STATE(292), - [sym_core_lhs_expression] = STATE(250), - [sym_assignment_statement] = STATE(515), - [sym_increment_statement] = STATE(515), - [sym_decrement_statement] = STATE(515), - [sym_for_update] = STATE(660), - [sym_func_call_statement] = STATE(643), - [sym_variable_updating_statement] = STATE(643), - [sym_ident_pattern_token] = ACTIONS(101), - [anon_sym_LPAREN] = ACTIONS(105), - [anon_sym_RPAREN] = ACTIONS(373), - [anon_sym_array] = ACTIONS(45), - [anon_sym_sampler] = ACTIONS(49), - [anon_sym_sampler_comparison] = ACTIONS(49), - [anon_sym_texture_1d] = ACTIONS(51), - [anon_sym_texture_2d] = ACTIONS(51), - [anon_sym_texture_2d_array] = ACTIONS(51), - [anon_sym_texture_3d] = ACTIONS(51), - [anon_sym_texture_cube] = ACTIONS(51), - [anon_sym_texture_cube_array] = ACTIONS(51), - [sym_multisampled_texture_type] = ACTIONS(53), - [anon_sym_texture_storage_1d] = ACTIONS(55), - [anon_sym_texture_storage_2d] = ACTIONS(55), - [anon_sym_texture_storage_2d_array] = ACTIONS(55), - [anon_sym_texture_storage_3d] = ACTIONS(55), - [anon_sym_texture_depth_2d] = ACTIONS(57), - [anon_sym_texture_depth_2d_array] = ACTIONS(57), - [anon_sym_texture_depth_cube] = ACTIONS(57), - [anon_sym_texture_depth_cube_array] = ACTIONS(57), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(57), - [anon_sym_bool] = ACTIONS(59), - [anon_sym_f32] = ACTIONS(59), - [anon_sym_f16] = ACTIONS(59), - [anon_sym_i32] = ACTIONS(59), - [anon_sym_u32] = ACTIONS(59), - [anon_sym_ptr] = ACTIONS(61), - [anon_sym_atomic] = ACTIONS(63), - [anon_sym_vec2] = ACTIONS(65), - [anon_sym_vec3] = ACTIONS(65), - [anon_sym_vec4] = ACTIONS(65), - [anon_sym_mat2x2] = ACTIONS(67), - [anon_sym_mat2x3] = ACTIONS(67), - [anon_sym_mat2x4] = ACTIONS(67), - [anon_sym_mat3x2] = ACTIONS(67), - [anon_sym_mat3x3] = ACTIONS(67), - [anon_sym_mat3x4] = ACTIONS(67), - [anon_sym_mat4x2] = ACTIONS(67), - [anon_sym_mat4x3] = ACTIONS(67), - [anon_sym_mat4x4] = ACTIONS(67), - [anon_sym_STAR] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(115), - [anon_sym__] = ACTIONS(117), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [92] = { - [sym_else_if_clause] = STATE(92), - [aux_sym_if_statement_repeat1] = STATE(92), - [sym_ident_pattern_token] = ACTIONS(375), - [anon_sym_SEMI] = ACTIONS(377), - [anon_sym_LPAREN] = ACTIONS(377), - [anon_sym_const] = ACTIONS(375), - [anon_sym_array] = ACTIONS(375), - [anon_sym_LBRACE] = ACTIONS(377), - [anon_sym_RBRACE] = ACTIONS(377), - [anon_sym_sampler] = ACTIONS(375), - [anon_sym_sampler_comparison] = ACTIONS(375), - [anon_sym_texture_1d] = ACTIONS(375), - [anon_sym_texture_2d] = ACTIONS(375), - [anon_sym_texture_2d_array] = ACTIONS(375), - [anon_sym_texture_3d] = ACTIONS(375), - [anon_sym_texture_cube] = ACTIONS(375), - [anon_sym_texture_cube_array] = ACTIONS(375), - [sym_multisampled_texture_type] = ACTIONS(375), - [anon_sym_texture_storage_1d] = ACTIONS(375), - [anon_sym_texture_storage_2d] = ACTIONS(375), - [anon_sym_texture_storage_2d_array] = ACTIONS(375), - [anon_sym_texture_storage_3d] = ACTIONS(375), - [anon_sym_texture_depth_2d] = ACTIONS(375), - [anon_sym_texture_depth_2d_array] = ACTIONS(375), - [anon_sym_texture_depth_cube] = ACTIONS(375), - [anon_sym_texture_depth_cube_array] = ACTIONS(375), - [anon_sym_texture_depth_multisampled_2d] = ACTIONS(375), - [anon_sym_bool] = ACTIONS(375), - [anon_sym_f32] = ACTIONS(375), - [anon_sym_f16] = ACTIONS(375), - [anon_sym_i32] = ACTIONS(375), - [anon_sym_u32] = ACTIONS(375), - [anon_sym_ptr] = ACTIONS(375), - [anon_sym_atomic] = ACTIONS(375), - [anon_sym_vec2] = ACTIONS(375), - [anon_sym_vec3] = ACTIONS(375), - [anon_sym_vec4] = ACTIONS(375), - [anon_sym_mat2x2] = ACTIONS(375), - [anon_sym_mat2x3] = ACTIONS(375), - [anon_sym_mat2x4] = ACTIONS(375), - [anon_sym_mat3x2] = ACTIONS(375), - [anon_sym_mat3x3] = ACTIONS(375), - [anon_sym_mat3x4] = ACTIONS(375), - [anon_sym_mat4x2] = ACTIONS(375), - [anon_sym_mat4x3] = ACTIONS(375), - [anon_sym_mat4x4] = ACTIONS(375), - [anon_sym_let] = ACTIONS(375), - [anon_sym_var] = ACTIONS(375), - [anon_sym_STAR] = ACTIONS(377), - [anon_sym_AMP] = ACTIONS(377), - [anon_sym__] = ACTIONS(375), - [anon_sym_if] = ACTIONS(375), - [anon_sym_else] = ACTIONS(379), - [anon_sym_switch] = ACTIONS(375), - [anon_sym_loop] = ACTIONS(375), - [anon_sym_for] = ACTIONS(375), - [anon_sym_while] = ACTIONS(375), - [anon_sym_break] = ACTIONS(375), - [sym_continue_statement] = ACTIONS(375), - [anon_sym_continuing] = ACTIONS(375), - [anon_sym_return] = ACTIONS(375), - [anon_sym_const_assert] = ACTIONS(375), - [anon_sym_discard] = ACTIONS(375), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, -}; - -static const uint16_t ts_small_parse_table[] = { - [0] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(384), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(382), 55, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_else, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [71] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(388), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(386), 55, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_else, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [142] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(371), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(369), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [212] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(392), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(390), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [282] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(396), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(394), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [352] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(400), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(398), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [422] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(404), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(402), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [492] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(408), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(406), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [562] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(412), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(410), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [632] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(416), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(414), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [702] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(420), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(418), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [772] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(424), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(422), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [842] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(428), 6, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(426), 54, - anon_sym_const, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [912] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(432), 12, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(430), 47, - anon_sym_true, - anon_sym_false, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - sym_hex_int_literal, - aux_sym_decimal_float_literal_token4, - aux_sym_hex_float_literal_token2, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_bitcast, - sym_ident_pattern_token, - [981] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(436), 12, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(434), 47, - anon_sym_true, - anon_sym_false, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - sym_hex_int_literal, - aux_sym_decimal_float_literal_token4, - aux_sym_hex_float_literal_token2, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_bitcast, - sym_ident_pattern_token, - [1050] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(440), 12, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(438), 47, - anon_sym_true, - anon_sym_false, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - sym_hex_int_literal, - aux_sym_decimal_float_literal_token4, - aux_sym_hex_float_literal_token2, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_bitcast, - sym_ident_pattern_token, - [1119] = 22, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(53), 1, - sym_multisampled_texture_type, - ACTIONS(61), 1, - anon_sym_ptr, - ACTIONS(63), 1, - anon_sym_atomic, - ACTIONS(283), 1, - sym_ident_pattern_token, - ACTIONS(442), 1, - anon_sym_array, - STATE(615), 1, - sym_storage_texture_type, - STATE(618), 1, - sym_type_specifier, - STATE(626), 1, - sym_sampled_texture_type, - ACTIONS(49), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(133), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - STATE(361), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(372), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(388), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(623), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(57), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(59), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [1220] = 22, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(53), 1, - sym_multisampled_texture_type, - ACTIONS(61), 1, - anon_sym_ptr, - ACTIONS(63), 1, - anon_sym_atomic, - ACTIONS(283), 1, - sym_ident_pattern_token, - ACTIONS(442), 1, - anon_sym_array, - STATE(615), 1, - sym_storage_texture_type, - STATE(618), 1, - sym_type_specifier, - STATE(626), 1, - sym_sampled_texture_type, - ACTIONS(49), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(111), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - STATE(361), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(372), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(388), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(623), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(57), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(59), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [1321] = 22, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(53), 1, - sym_multisampled_texture_type, - ACTIONS(61), 1, - anon_sym_ptr, - ACTIONS(63), 1, - anon_sym_atomic, - ACTIONS(283), 1, - sym_ident_pattern_token, - ACTIONS(442), 1, - anon_sym_array, - STATE(615), 1, - sym_storage_texture_type, - STATE(626), 1, - sym_sampled_texture_type, - STATE(653), 1, - sym_type_specifier, - ACTIONS(49), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(133), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - STATE(361), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(372), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(388), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(623), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(57), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(59), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [1422] = 22, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(53), 1, - sym_multisampled_texture_type, - ACTIONS(61), 1, - anon_sym_ptr, - ACTIONS(63), 1, - anon_sym_atomic, - ACTIONS(283), 1, - sym_ident_pattern_token, - ACTIONS(442), 1, - anon_sym_array, - STATE(581), 1, - sym_type_specifier, - STATE(615), 1, - sym_storage_texture_type, - STATE(626), 1, - sym_sampled_texture_type, - ACTIONS(49), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(109), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - STATE(361), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(372), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(388), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(623), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(57), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(59), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [1523] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(485), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [1617] = 20, - ACTIONS(53), 1, - sym_multisampled_texture_type, - ACTIONS(61), 1, - anon_sym_ptr, - ACTIONS(63), 1, - anon_sym_atomic, - ACTIONS(283), 1, - sym_ident_pattern_token, - ACTIONS(442), 1, - anon_sym_array, - STATE(472), 1, - sym_type_specifier, - STATE(615), 1, - sym_storage_texture_type, - STATE(626), 1, - sym_sampled_texture_type, - ACTIONS(49), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(361), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(372), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(388), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(623), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(57), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(59), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [1711] = 20, - ACTIONS(53), 1, - sym_multisampled_texture_type, - ACTIONS(61), 1, - anon_sym_ptr, - ACTIONS(63), 1, - anon_sym_atomic, - ACTIONS(283), 1, - sym_ident_pattern_token, - ACTIONS(442), 1, - anon_sym_array, - STATE(512), 1, - sym_type_specifier, - STATE(615), 1, - sym_storage_texture_type, - STATE(626), 1, - sym_sampled_texture_type, - ACTIONS(49), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(361), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(372), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(388), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(623), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(57), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(59), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [1805] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(525), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [1899] = 20, - ACTIONS(53), 1, - sym_multisampled_texture_type, - ACTIONS(61), 1, - anon_sym_ptr, - ACTIONS(63), 1, - anon_sym_atomic, - ACTIONS(283), 1, - sym_ident_pattern_token, - ACTIONS(442), 1, - anon_sym_array, - STATE(479), 1, - sym_type_specifier, - STATE(615), 1, - sym_storage_texture_type, - STATE(626), 1, - sym_sampled_texture_type, - ACTIONS(49), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(361), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(372), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(388), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(623), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(57), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(59), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [1993] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(526), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [2087] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(528), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [2181] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(513), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [2275] = 20, - ACTIONS(53), 1, - sym_multisampled_texture_type, - ACTIONS(61), 1, - anon_sym_ptr, - ACTIONS(63), 1, - anon_sym_atomic, - ACTIONS(283), 1, - sym_ident_pattern_token, - ACTIONS(442), 1, - anon_sym_array, - STATE(495), 1, - sym_type_specifier, - STATE(615), 1, - sym_storage_texture_type, - STATE(626), 1, - sym_sampled_texture_type, - ACTIONS(49), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(361), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(372), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(388), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(623), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(57), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(59), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [2369] = 20, - ACTIONS(53), 1, - sym_multisampled_texture_type, - ACTIONS(61), 1, - anon_sym_ptr, - ACTIONS(63), 1, - anon_sym_atomic, - ACTIONS(283), 1, - sym_ident_pattern_token, - ACTIONS(442), 1, - anon_sym_array, - STATE(488), 1, - sym_type_specifier, - STATE(615), 1, - sym_storage_texture_type, - STATE(626), 1, - sym_sampled_texture_type, - ACTIONS(49), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(361), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(372), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(388), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(623), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(57), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(59), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [2463] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(579), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [2557] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(645), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [2651] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(475), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [2745] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(489), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [2839] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(642), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [2933] = 20, - ACTIONS(53), 1, - sym_multisampled_texture_type, - ACTIONS(61), 1, - anon_sym_ptr, - ACTIONS(63), 1, - anon_sym_atomic, - ACTIONS(283), 1, - sym_ident_pattern_token, - ACTIONS(442), 1, - anon_sym_array, - STATE(543), 1, - sym_type_specifier, - STATE(615), 1, - sym_storage_texture_type, - STATE(626), 1, - sym_sampled_texture_type, - ACTIONS(49), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(361), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(372), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(388), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(623), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(57), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(59), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [3027] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(639), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [3121] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(636), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [3215] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(629), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [3309] = 20, - ACTIONS(239), 1, - sym_ident_pattern_token, - ACTIONS(444), 1, - anon_sym_array, - ACTIONS(448), 1, - sym_multisampled_texture_type, - ACTIONS(454), 1, - anon_sym_ptr, - ACTIONS(456), 1, - anon_sym_atomic, - STATE(580), 1, - sym_type_specifier, - STATE(657), 1, - sym_sampled_texture_type, - STATE(674), 1, - sym_storage_texture_type, - ACTIONS(446), 2, - anon_sym_sampler, - anon_sym_sampler_comparison, - STATE(466), 2, - sym_sampler_type, - sym_depth_texture_type, - STATE(492), 2, - sym_array_type_specifier, - sym_texture_and_sampler_types, - STATE(509), 2, - sym_ident, - sym_type_specifier_without_ident, - STATE(658), 2, - sym_vec_prefix, - sym_mat_prefix, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(65), 3, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - ACTIONS(55), 4, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - ACTIONS(450), 5, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - ACTIONS(452), 5, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - ACTIONS(51), 6, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - ACTIONS(67), 9, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - [3403] = 4, - ACTIONS(460), 1, - anon_sym_AT, - STATE(133), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(458), 42, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_var, - anon_sym_override, - anon_sym_fn, - sym_ident_pattern_token, - [3460] = 3, - ACTIONS(465), 1, - anon_sym_AT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(463), 42, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_var, - anon_sym_override, - anon_sym_fn, - sym_ident_pattern_token, - [3513] = 3, - ACTIONS(469), 1, - anon_sym_AT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(467), 42, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_var, - anon_sym_override, - anon_sym_fn, - sym_ident_pattern_token, - [3566] = 3, - ACTIONS(473), 1, - anon_sym_AT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(471), 42, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_var, - anon_sym_override, - anon_sym_fn, - sym_ident_pattern_token, - [3619] = 3, - ACTIONS(477), 1, - anon_sym_AT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(475), 42, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_var, - anon_sym_override, - anon_sym_fn, - sym_ident_pattern_token, - [3672] = 3, - ACTIONS(481), 1, - anon_sym_AT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(479), 42, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_var, - anon_sym_override, - anon_sym_fn, - sym_ident_pattern_token, - [3725] = 3, - ACTIONS(485), 1, - anon_sym_AT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(483), 42, - anon_sym_array, - anon_sym_sampler, - anon_sym_sampler_comparison, - anon_sym_texture_1d, - anon_sym_texture_2d, - anon_sym_texture_2d_array, - anon_sym_texture_3d, - anon_sym_texture_cube, - anon_sym_texture_cube_array, - sym_multisampled_texture_type, - anon_sym_texture_storage_1d, - anon_sym_texture_storage_2d, - anon_sym_texture_storage_2d_array, - anon_sym_texture_storage_3d, - anon_sym_texture_depth_2d, - anon_sym_texture_depth_2d_array, - anon_sym_texture_depth_cube, - anon_sym_texture_depth_cube_array, - anon_sym_texture_depth_multisampled_2d, - anon_sym_bool, - anon_sym_f32, - anon_sym_f16, - anon_sym_i32, - anon_sym_u32, - anon_sym_ptr, - anon_sym_atomic, - anon_sym_vec2, - anon_sym_vec3, - anon_sym_vec4, - anon_sym_mat2x2, - anon_sym_mat2x3, - anon_sym_mat2x4, - anon_sym_mat3x2, - anon_sym_mat3x3, - anon_sym_mat3x4, - anon_sym_mat4x2, - anon_sym_mat4x3, - anon_sym_mat4x4, - anon_sym_var, - anon_sym_override, - anon_sym_fn, - sym_ident_pattern_token, - [3778] = 4, - ACTIONS(489), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(491), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(487), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [3817] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(495), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(493), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [3854] = 6, - ACTIONS(499), 1, - anon_sym_LBRACK, - ACTIONS(501), 1, - anon_sym_DOT, - STATE(164), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(503), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(497), 21, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [3897] = 6, - ACTIONS(499), 1, - anon_sym_LBRACK, - ACTIONS(501), 1, - anon_sym_DOT, - STATE(166), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(507), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(505), 21, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [3940] = 6, - ACTIONS(499), 1, - anon_sym_LBRACK, - ACTIONS(501), 1, - anon_sym_DOT, - STATE(163), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(511), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(509), 21, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [3983] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(515), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(513), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4019] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(491), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(487), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4055] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(519), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(517), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4091] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(523), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(521), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4127] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(527), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(525), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4163] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(531), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(529), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4199] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(535), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(533), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4235] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(539), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(537), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4271] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(543), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(541), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4307] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(547), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(545), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4343] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(551), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(549), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4379] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(555), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(553), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4415] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(559), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(557), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4451] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(563), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(561), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4487] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(567), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(565), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4523] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(571), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(569), 23, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4559] = 19, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(11), 1, - anon_sym_const, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(15), 1, - anon_sym_alias, - ACTIONS(17), 1, - anon_sym_var, - ACTIONS(19), 1, - anon_sym_override, - ACTIONS(21), 1, - anon_sym_const_assert, - ACTIONS(23), 1, - anon_sym_fn, - ACTIONS(25), 1, - anon_sym_enable, - ACTIONS(573), 1, - ts_builtin_sym_end, - ACTIONS(575), 1, - anon_sym_SEMI, - STATE(338), 1, - sym_enable_directive, - STATE(464), 1, - sym_variable_decl, - STATE(465), 1, - sym_function_header, - STATE(288), 2, - sym_global_directive, - aux_sym_translation_unit_repeat1, - STATE(355), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(191), 3, - sym_struct_decl, - sym_function_decl, - aux_sym_translation_unit_repeat2, - STATE(646), 4, - sym_type_alias_decl, - sym_global_variable_decl, - sym_global_constant_decl, - sym_const_assert_statement, - [4626] = 7, - ACTIONS(579), 1, - anon_sym_AMP, - ACTIONS(581), 1, - anon_sym_SLASH, - ACTIONS(583), 1, - anon_sym_PIPE, - ACTIONS(585), 1, - anon_sym_CARET, - ACTIONS(587), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(577), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [4668] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(591), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(589), 21, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4702] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(595), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(593), 21, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4736] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(599), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(597), 21, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4770] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(503), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(497), 21, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4804] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(603), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(601), 21, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [4838] = 3, - ACTIONS(495), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(493), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [4870] = 6, - ACTIONS(503), 1, - anon_sym_SLASH, - ACTIONS(605), 1, - anon_sym_LBRACK, - ACTIONS(607), 1, - anon_sym_DOT, - STATE(197), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [4908] = 6, - ACTIONS(511), 1, - anon_sym_SLASH, - ACTIONS(605), 1, - anon_sym_LBRACK, - ACTIONS(607), 1, - anon_sym_DOT, - STATE(198), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(509), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [4946] = 4, - ACTIONS(489), 1, - anon_sym_LPAREN, - ACTIONS(491), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [4980] = 6, - ACTIONS(507), 1, - anon_sym_SLASH, - ACTIONS(605), 1, - anon_sym_LBRACK, - ACTIONS(607), 1, - anon_sym_DOT, - STATE(201), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(505), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5018] = 3, - ACTIONS(555), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(553), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5049] = 3, - ACTIONS(531), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(529), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5080] = 3, - ACTIONS(567), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(565), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5111] = 3, - ACTIONS(491), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5142] = 3, - ACTIONS(523), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(521), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5173] = 3, - ACTIONS(539), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5204] = 16, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(11), 1, - anon_sym_const, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(15), 1, - anon_sym_alias, - ACTIONS(17), 1, - anon_sym_var, - ACTIONS(19), 1, - anon_sym_override, - ACTIONS(21), 1, - anon_sym_const_assert, - ACTIONS(23), 1, - anon_sym_fn, - ACTIONS(573), 1, - ts_builtin_sym_end, - ACTIONS(609), 1, - anon_sym_SEMI, - STATE(464), 1, - sym_variable_decl, - STATE(465), 1, - sym_function_header, - STATE(355), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(192), 3, - sym_struct_decl, - sym_function_decl, - aux_sym_translation_unit_repeat2, - STATE(646), 4, - sym_type_alias_decl, - sym_global_variable_decl, - sym_global_constant_decl, - sym_const_assert_statement, - [5261] = 3, - ACTIONS(563), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(561), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5292] = 3, - ACTIONS(551), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(549), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5323] = 4, - ACTIONS(581), 1, - anon_sym_SLASH, - ACTIONS(587), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(577), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5356] = 3, - ACTIONS(571), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(569), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5387] = 3, - ACTIONS(535), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(533), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5418] = 3, - ACTIONS(519), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(517), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5449] = 3, - ACTIONS(543), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5480] = 3, - ACTIONS(527), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(525), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5511] = 3, - ACTIONS(559), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(557), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5542] = 3, - ACTIONS(515), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(513), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5573] = 3, - ACTIONS(547), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(545), 20, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5604] = 16, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(11), 1, - anon_sym_const, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(15), 1, - anon_sym_alias, - ACTIONS(17), 1, - anon_sym_var, - ACTIONS(19), 1, - anon_sym_override, - ACTIONS(21), 1, - anon_sym_const_assert, - ACTIONS(23), 1, - anon_sym_fn, - ACTIONS(609), 1, - anon_sym_SEMI, - ACTIONS(611), 1, - ts_builtin_sym_end, - STATE(464), 1, - sym_variable_decl, - STATE(465), 1, - sym_function_header, - STATE(355), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(192), 3, - sym_struct_decl, - sym_function_decl, - aux_sym_translation_unit_repeat2, - STATE(646), 4, - sym_type_alias_decl, - sym_global_variable_decl, - sym_global_constant_decl, - sym_const_assert_statement, - [5661] = 16, - ACTIONS(613), 1, - ts_builtin_sym_end, - ACTIONS(615), 1, - anon_sym_SEMI, - ACTIONS(618), 1, - anon_sym_AT, - ACTIONS(621), 1, - anon_sym_const, - ACTIONS(624), 1, - anon_sym_struct, - ACTIONS(627), 1, - anon_sym_alias, - ACTIONS(630), 1, - anon_sym_var, - ACTIONS(633), 1, - anon_sym_override, - ACTIONS(636), 1, - anon_sym_const_assert, - ACTIONS(639), 1, - anon_sym_fn, - STATE(464), 1, - sym_variable_decl, - STATE(465), 1, - sym_function_header, - STATE(355), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(192), 3, - sym_struct_decl, - sym_function_decl, - aux_sym_translation_unit_repeat2, - STATE(646), 4, - sym_type_alias_decl, - sym_global_variable_decl, - sym_global_constant_decl, - sym_const_assert_statement, - [5718] = 5, - ACTIONS(646), 1, - anon_sym_SLASH, - STATE(73), 1, - sym_multiplicative_operator, - ACTIONS(644), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(642), 16, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5752] = 5, - ACTIONS(646), 1, - anon_sym_SLASH, - STATE(73), 1, - sym_multiplicative_operator, - ACTIONS(644), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(648), 16, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5786] = 3, - ACTIONS(495), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(493), 18, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [5816] = 3, - ACTIONS(652), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(650), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5845] = 3, - ACTIONS(595), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(593), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5874] = 3, - ACTIONS(591), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(589), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5903] = 3, - ACTIONS(603), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(601), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5932] = 3, - ACTIONS(599), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(597), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5961] = 3, - ACTIONS(503), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [5990] = 3, - ACTIONS(581), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(577), 18, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6019] = 3, - STATE(652), 1, - sym_texel_format, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(654), 17, - anon_sym_rgba8unorm, - anon_sym_rgba8snorm, - anon_sym_rgba8uint, - anon_sym_rgba8sint, - anon_sym_rgba16uint, - anon_sym_rgba16sint, - anon_sym_rgba16float, - anon_sym_r32uint, - anon_sym_r32sint, - anon_sym_r32float, - anon_sym_rg32uint, - anon_sym_rg32sint, - anon_sym_rg32float, - anon_sym_rgba32uint, - anon_sym_rgba32sint, - anon_sym_rgba32float, - anon_sym_bgra8unorm, - [6047] = 6, - ACTIONS(656), 1, - anon_sym_LBRACK, - ACTIONS(658), 1, - anon_sym_DOT, - STATE(282), 1, - sym_component_or_swizzle_specifier, - ACTIONS(507), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(505), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6081] = 3, - ACTIONS(495), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(493), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6109] = 4, - ACTIONS(489), 1, - anon_sym_LPAREN, - ACTIONS(491), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6139] = 6, - ACTIONS(656), 1, - anon_sym_LBRACK, - ACTIONS(658), 1, - anon_sym_DOT, - STATE(266), 1, - sym_component_or_swizzle_specifier, - ACTIONS(511), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(509), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6173] = 6, - ACTIONS(503), 1, - anon_sym_SLASH, - ACTIONS(660), 1, - anon_sym_LBRACK, - ACTIONS(662), 1, - anon_sym_DOT, - STATE(275), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 14, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6207] = 6, - ACTIONS(507), 1, - anon_sym_SLASH, - ACTIONS(660), 1, - anon_sym_LBRACK, - ACTIONS(662), 1, - anon_sym_DOT, - STATE(258), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(505), 14, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6241] = 4, - ACTIONS(489), 1, - anon_sym_LPAREN, - ACTIONS(491), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6271] = 3, - STATE(599), 1, - sym_texel_format, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(654), 17, - anon_sym_rgba8unorm, - anon_sym_rgba8snorm, - anon_sym_rgba8uint, - anon_sym_rgba8sint, - anon_sym_rgba16uint, - anon_sym_rgba16sint, - anon_sym_rgba16float, - anon_sym_r32uint, - anon_sym_r32sint, - anon_sym_r32float, - anon_sym_rg32uint, - anon_sym_rg32sint, - anon_sym_rg32float, - anon_sym_rgba32uint, - anon_sym_rgba32sint, - anon_sym_rgba32float, - anon_sym_bgra8unorm, - [6299] = 6, - ACTIONS(656), 1, - anon_sym_LBRACK, - ACTIONS(658), 1, - anon_sym_DOT, - STATE(276), 1, - sym_component_or_swizzle_specifier, - ACTIONS(503), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6333] = 6, - ACTIONS(511), 1, - anon_sym_SLASH, - ACTIONS(660), 1, - anon_sym_LBRACK, - ACTIONS(662), 1, - anon_sym_DOT, - STATE(265), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(509), 14, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6367] = 4, - STATE(64), 1, - sym_additive_operator, - ACTIONS(666), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(664), 14, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6396] = 3, - ACTIONS(559), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(557), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6423] = 3, - ACTIONS(519), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(517), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6450] = 3, - ACTIONS(531), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(529), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6477] = 3, - ACTIONS(555), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(553), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6504] = 3, - ACTIONS(519), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(517), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6531] = 3, - ACTIONS(527), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(525), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6558] = 3, - ACTIONS(567), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(565), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6585] = 3, - ACTIONS(539), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6612] = 3, - ACTIONS(523), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(521), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6639] = 3, - ACTIONS(515), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(513), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6666] = 3, - ACTIONS(547), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(545), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6693] = 3, - ACTIONS(535), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(533), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6720] = 3, - ACTIONS(491), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6747] = 3, - ACTIONS(543), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6774] = 3, - ACTIONS(563), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(561), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6801] = 3, - ACTIONS(535), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(533), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6828] = 3, - ACTIONS(571), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(569), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [6855] = 3, - ACTIONS(523), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(521), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6882] = 3, - ACTIONS(531), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(529), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6909] = 3, - ACTIONS(547), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(545), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6936] = 3, - ACTIONS(515), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(513), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6963] = 3, - ACTIONS(527), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(525), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [6990] = 3, - ACTIONS(563), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(561), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [7017] = 3, - ACTIONS(567), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(565), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7044] = 3, - ACTIONS(555), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(553), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7071] = 3, - ACTIONS(551), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(549), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [7098] = 3, - ACTIONS(559), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(557), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [7125] = 3, - ACTIONS(539), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [7152] = 3, - ACTIONS(571), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(569), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7179] = 3, - ACTIONS(551), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(549), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7206] = 3, - ACTIONS(491), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [7233] = 3, - ACTIONS(543), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 16, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7260] = 6, - ACTIONS(507), 1, - anon_sym_SLASH, - ACTIONS(668), 1, - anon_sym_LBRACK, - ACTIONS(670), 1, - anon_sym_DOT, - STATE(310), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(505), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7292] = 5, - ACTIONS(672), 1, - anon_sym_LBRACK, - ACTIONS(674), 1, - anon_sym_DOT, - STATE(309), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(505), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [7322] = 3, - ACTIONS(489), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(676), 15, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [7348] = 5, - ACTIONS(672), 1, - anon_sym_LBRACK, - ACTIONS(674), 1, - anon_sym_DOT, - STATE(296), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(678), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [7378] = 3, - ACTIONS(495), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(493), 15, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7404] = 6, - ACTIONS(511), 1, - anon_sym_SLASH, - ACTIONS(668), 1, - anon_sym_LBRACK, - ACTIONS(670), 1, - anon_sym_DOT, - STATE(305), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(509), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7436] = 4, - ACTIONS(489), 1, - anon_sym_LPAREN, - ACTIONS(491), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7464] = 6, - ACTIONS(503), 1, - anon_sym_SLASH, - ACTIONS(668), 1, - anon_sym_LBRACK, - ACTIONS(670), 1, - anon_sym_DOT, - STATE(308), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7496] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(493), 16, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_LPAREN, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [7520] = 5, - ACTIONS(672), 1, - anon_sym_LBRACK, - ACTIONS(674), 1, - anon_sym_DOT, - STATE(301), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [7550] = 4, - ACTIONS(581), 1, - anon_sym_SLASH, - ACTIONS(680), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(577), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7577] = 3, - ACTIONS(503), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 14, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7602] = 3, - ACTIONS(523), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(521), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7627] = 3, - ACTIONS(567), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(565), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7652] = 3, - ACTIONS(535), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(533), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7677] = 3, - ACTIONS(599), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(597), 14, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7702] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(676), 15, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [7725] = 3, - ACTIONS(603), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(601), 14, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7750] = 3, - ACTIONS(591), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(589), 14, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7775] = 3, - ACTIONS(591), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(589), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [7800] = 3, - ACTIONS(539), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7825] = 3, - ACTIONS(603), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(601), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [7850] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(553), 15, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [7873] = 3, - ACTIONS(551), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(549), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7898] = 3, - ACTIONS(555), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(553), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7923] = 3, - ACTIONS(563), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(561), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7948] = 3, - ACTIONS(599), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(597), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [7973] = 3, - ACTIONS(547), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(545), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [7998] = 3, - ACTIONS(595), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(593), 14, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8023] = 3, - ACTIONS(595), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(593), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [8048] = 3, - ACTIONS(559), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(557), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8073] = 3, - ACTIONS(491), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8098] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(557), 15, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [8121] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(682), 15, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [8144] = 3, - ACTIONS(515), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(513), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8169] = 3, - ACTIONS(503), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [8194] = 3, - ACTIONS(571), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(569), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8219] = 3, - ACTIONS(543), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8244] = 3, - ACTIONS(531), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(529), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8269] = 3, - ACTIONS(519), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(517), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8294] = 3, - ACTIONS(527), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(525), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8319] = 6, - ACTIONS(686), 1, - anon_sym_const, - ACTIONS(688), 1, - anon_sym_enable, - STATE(338), 1, - sym_enable_directive, - STATE(288), 2, - sym_global_directive, - aux_sym_translation_unit_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(684), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [8349] = 4, - ACTIONS(581), 1, - anon_sym_SLASH, - ACTIONS(691), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(577), 11, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - [8375] = 5, - ACTIONS(646), 1, - anon_sym_SLASH, - STATE(78), 1, - sym_multiplicative_operator, - ACTIONS(644), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(642), 10, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8403] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(695), 6, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(693), 8, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8427] = 6, - ACTIONS(697), 1, - anon_sym_EQ, - ACTIONS(701), 1, - anon_sym_PLUS_PLUS, - ACTIONS(703), 1, - anon_sym_DASH_DASH, - STATE(31), 1, - sym_compound_assignment_operator, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(699), 10, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - [8457] = 5, - ACTIONS(646), 1, - anon_sym_SLASH, - STATE(78), 1, - sym_multiplicative_operator, - ACTIONS(644), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(648), 10, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8485] = 6, - ACTIONS(707), 1, - anon_sym_builtin, - ACTIONS(711), 1, - anon_sym_interpolate, - ACTIONS(713), 1, - anon_sym_workgroup_size, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(709), 5, - anon_sym_const, - anon_sym_invariant, - anon_sym_vertex, - anon_sym_fragment, - anon_sym_compute, - ACTIONS(705), 6, - anon_sym_align, - anon_sym_binding, - anon_sym_group, - anon_sym_id, - anon_sym_location, - anon_sym_size, - [8515] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(715), 14, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8537] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(717), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [8558] = 3, - ACTIONS(599), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(597), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8581] = 5, - ACTIONS(646), 1, - anon_sym_SLASH, - STATE(65), 1, - sym_multiplicative_operator, - ACTIONS(644), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(648), 9, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - [8608] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(719), 6, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(693), 7, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_PIPE_PIPE, - [8631] = 3, - ACTIONS(495), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(493), 12, - sym__template_args_end, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [8654] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(593), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [8675] = 3, - STATE(422), 1, - sym_builtin_value_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(721), 12, - anon_sym_vertex_index, - anon_sym_instance_index, - anon_sym_position, - anon_sym_front_facing, - anon_sym_frag_depth, - anon_sym_local_invocation_id, - anon_sym_local_invocation_index, - anon_sym_global_invocation_id, - anon_sym_workgroup_id, - anon_sym_num_workgroups, - anon_sym_sample_index, - anon_sym_sample_mask, - [8698] = 3, - ACTIONS(581), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(577), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8721] = 3, - ACTIONS(652), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(650), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8744] = 3, - ACTIONS(591), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(589), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8767] = 3, - ACTIONS(603), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(601), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8790] = 5, - ACTIONS(646), 1, - anon_sym_SLASH, - STATE(65), 1, - sym_multiplicative_operator, - ACTIONS(644), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(642), 9, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - [8817] = 3, - ACTIONS(595), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(593), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8840] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [8861] = 3, - ACTIONS(503), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [8884] = 6, - ACTIONS(511), 1, - anon_sym_SLASH, - ACTIONS(723), 1, - anon_sym_LBRACK, - ACTIONS(725), 1, - anon_sym_DOT, - STATE(352), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(509), 8, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [8912] = 6, - ACTIONS(503), 1, - anon_sym_SLASH, - ACTIONS(723), 1, - anon_sym_LBRACK, - ACTIONS(725), 1, - anon_sym_DOT, - STATE(353), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 8, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [8940] = 6, - ACTIONS(507), 1, - anon_sym_SLASH, - ACTIONS(723), 1, - anon_sym_LBRACK, - ACTIONS(725), 1, - anon_sym_DOT, - STATE(349), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(505), 8, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [8968] = 4, - ACTIONS(489), 1, - anon_sym_LPAREN, - ACTIONS(491), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [8992] = 4, - ACTIONS(727), 1, - sym_ident_pattern_token, - STATE(209), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(729), 8, - anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - [9015] = 3, - ACTIONS(567), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(565), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9036] = 4, - STATE(63), 1, - sym_additive_operator, - ACTIONS(666), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(664), 8, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [9059] = 3, - ACTIONS(539), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9080] = 3, - ACTIONS(543), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9101] = 3, - ACTIONS(519), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(517), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9122] = 3, - ACTIONS(551), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(549), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9143] = 4, - ACTIONS(731), 1, - sym_ident_pattern_token, - STATE(204), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(733), 8, - anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - [9166] = 3, - ACTIONS(547), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(545), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9187] = 3, - ACTIONS(563), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(561), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9208] = 4, - ACTIONS(735), 1, - sym_ident_pattern_token, - STATE(248), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(737), 8, - anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - [9231] = 4, - ACTIONS(739), 1, - sym_ident_pattern_token, - STATE(143), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(741), 8, - anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - [9254] = 3, - ACTIONS(745), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(743), 10, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - anon_sym_enable, - [9275] = 3, - ACTIONS(535), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(533), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9296] = 3, - ACTIONS(491), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9317] = 3, - ACTIONS(515), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(513), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9338] = 3, - ACTIONS(531), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(529), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9359] = 3, - ACTIONS(523), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(521), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9380] = 3, - ACTIONS(555), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(553), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9401] = 4, - ACTIONS(747), 1, - sym_ident_pattern_token, - STATE(313), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(749), 8, - anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - [9424] = 4, - ACTIONS(751), 1, - sym_ident_pattern_token, - STATE(247), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(753), 8, - anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - [9447] = 3, - ACTIONS(527), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(525), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9468] = 3, - ACTIONS(559), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(557), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9489] = 3, - ACTIONS(757), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(755), 10, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - anon_sym_enable, - [9510] = 3, - ACTIONS(571), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(569), 10, - sym__template_args_end, - anon_sym_LBRACK, - anon_sym_DOT, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9531] = 4, - ACTIONS(759), 1, - sym_ident_pattern_token, - STATE(172), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(761), 8, - anon_sym_SLASH_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_LBRACKrgba_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - anon_sym_SLASH_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_LBRACKxyzw_RBRACK_SLASH, - [9554] = 3, - ACTIONS(765), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(763), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [9574] = 3, - ACTIONS(769), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(767), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [9594] = 3, - ACTIONS(773), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(771), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [9614] = 3, - ACTIONS(777), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(775), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [9634] = 3, - ACTIONS(781), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(779), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [9654] = 4, - STATE(62), 1, - sym_additive_operator, - ACTIONS(666), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(664), 7, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_PIPE_PIPE, - [9676] = 3, - ACTIONS(783), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(613), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [9696] = 3, - ACTIONS(787), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(785), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [9716] = 3, - ACTIONS(503), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 8, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9735] = 3, - ACTIONS(599), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(597), 8, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9754] = 3, - ACTIONS(603), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(601), 8, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9773] = 3, - ACTIONS(591), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(589), 8, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9792] = 3, - ACTIONS(595), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(593), 8, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE, - anon_sym_CARET, - [9811] = 6, - ACTIONS(581), 1, - anon_sym_SLASH, - ACTIONS(585), 1, - anon_sym_CARET, - ACTIONS(789), 1, - anon_sym_AMP, - ACTIONS(791), 1, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(577), 5, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - [9836] = 8, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(17), 1, - anon_sym_var, - ACTIONS(23), 1, - anon_sym_fn, - ACTIONS(793), 1, - anon_sym_override, - STATE(493), 1, - sym_variable_decl, - STATE(497), 1, - sym_function_header, - STATE(133), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [9864] = 4, - ACTIONS(797), 1, - anon_sym_AMP_AMP, - ACTIONS(799), 1, - anon_sym_PIPE_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(795), 6, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [9884] = 8, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(801), 1, - sym_ident_pattern_token, - ACTIONS(803), 1, - anon_sym_RPAREN, - STATE(441), 1, - sym_param, - STATE(538), 1, - sym_param_list, - STATE(539), 1, - sym_ident, - STATE(399), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [9912] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(715), 8, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [9928] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(805), 8, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [9944] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(807), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [9959] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(809), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [9974] = 7, - ACTIONS(801), 1, - sym_ident_pattern_token, - ACTIONS(811), 1, - anon_sym_LPAREN, - STATE(413), 1, - sym_core_lhs_expression, - STATE(428), 1, - sym_ident, - STATE(557), 1, - sym_lhs_expression, - ACTIONS(813), 2, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [9999] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(815), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [10014] = 5, - ACTIONS(646), 1, - anon_sym_SLASH, - STATE(77), 1, - sym_multiplicative_operator, - ACTIONS(644), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(642), 3, - sym__template_args_end, - anon_sym_DASH, - anon_sym_PLUS, - [10035] = 7, - ACTIONS(801), 1, - sym_ident_pattern_token, - ACTIONS(811), 1, - anon_sym_LPAREN, - STATE(413), 1, - sym_core_lhs_expression, - STATE(428), 1, - sym_ident, - STATE(577), 1, - sym_lhs_expression, - ACTIONS(813), 2, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10060] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(817), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [10075] = 6, - ACTIONS(819), 1, - anon_sym_RBRACE, - ACTIONS(821), 1, - anon_sym_case, - ACTIONS(823), 1, - anon_sym_default, - STATE(382), 2, - sym_switch_body, - aux_sym_switch_statement_repeat1, - STATE(439), 2, - sym_case_clause, - sym_default_alone_clause, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10098] = 3, - ACTIONS(827), 1, - anon_sym_CARET, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(825), 6, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [10115] = 7, - ACTIONS(105), 1, - anon_sym_LPAREN, - ACTIONS(829), 1, - sym_ident_pattern_token, - STATE(250), 1, - sym_core_lhs_expression, - STATE(263), 1, - sym_ident, - STATE(296), 1, - sym_lhs_expression, - ACTIONS(115), 2, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10140] = 7, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(801), 1, - sym_ident_pattern_token, - ACTIONS(831), 1, - anon_sym_RPAREN, - STATE(487), 1, - sym_param, - STATE(539), 1, - sym_ident, - STATE(399), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10165] = 7, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(731), 1, - sym_ident_pattern_token, - ACTIONS(833), 1, - anon_sym_RBRACE, - STATE(494), 1, - sym_struct_member, - STATE(545), 1, - sym_member_ident, - STATE(402), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10190] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(835), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [10205] = 5, - ACTIONS(646), 1, - anon_sym_SLASH, - STATE(77), 1, - sym_multiplicative_operator, - ACTIONS(644), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(648), 3, - sym__template_args_end, - anon_sym_DASH, - anon_sym_PLUS, - [10226] = 7, - ACTIONS(801), 1, - sym_ident_pattern_token, - ACTIONS(811), 1, - anon_sym_LPAREN, - STATE(413), 1, - sym_core_lhs_expression, - STATE(428), 1, - sym_ident, - STATE(537), 1, - sym_lhs_expression, - ACTIONS(813), 2, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10251] = 3, - ACTIONS(839), 1, - anon_sym_AMP_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(837), 6, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [10268] = 7, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(801), 1, - sym_ident_pattern_token, - ACTIONS(841), 1, - anon_sym_RPAREN, - STATE(487), 1, - sym_param, - STATE(539), 1, - sym_ident, - STATE(399), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10293] = 7, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(731), 1, - sym_ident_pattern_token, - ACTIONS(843), 1, - anon_sym_RBRACE, - STATE(494), 1, - sym_struct_member, - STATE(545), 1, - sym_member_ident, - STATE(402), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10318] = 3, - ACTIONS(845), 1, - anon_sym_PIPE_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(837), 6, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [10335] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(847), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [10350] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(849), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [10365] = 3, - ACTIONS(851), 1, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(825), 6, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [10382] = 6, - ACTIONS(853), 1, - anon_sym_RBRACE, - ACTIONS(855), 1, - anon_sym_case, - ACTIONS(858), 1, - anon_sym_default, - STATE(382), 2, - sym_switch_body, - aux_sym_switch_statement_repeat1, - STATE(439), 2, - sym_case_clause, - sym_default_alone_clause, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10405] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(861), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [10420] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(863), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [10435] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(865), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [10450] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(867), 7, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [10465] = 3, - ACTIONS(869), 1, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(825), 6, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [10482] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(871), 6, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ, - [10496] = 3, - ACTIONS(652), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(650), 5, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - [10512] = 3, - STATE(651), 1, - sym_address_space, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(873), 5, - anon_sym_function, - anon_sym_private, - anon_sym_workgroup, - anon_sym_uniform, - anon_sym_storage, - [10528] = 6, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(731), 1, - sym_ident_pattern_token, - STATE(494), 1, - sym_struct_member, - STATE(545), 1, - sym_member_ident, - STATE(402), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10550] = 5, - ACTIONS(821), 1, - anon_sym_case, - ACTIONS(823), 1, - anon_sym_default, - STATE(367), 2, - sym_switch_body, - aux_sym_switch_statement_repeat1, - STATE(439), 2, - sym_case_clause, - sym_default_alone_clause, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10570] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(795), 6, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [10584] = 6, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(801), 1, - sym_ident_pattern_token, - STATE(487), 1, - sym_param, - STATE(539), 1, - sym_ident, - STATE(399), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10606] = 3, - STATE(527), 1, - sym_address_space, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(873), 5, - anon_sym_function, - anon_sym_private, - anon_sym_workgroup, - anon_sym_uniform, - anon_sym_storage, - [10622] = 6, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(731), 1, - sym_ident_pattern_token, - STATE(425), 1, - sym_struct_member, - STATE(545), 1, - sym_member_ident, - STATE(402), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10644] = 3, - ACTIONS(581), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(577), 5, - sym__template_args_end, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - [10660] = 3, - STATE(518), 1, - sym_address_space, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(875), 5, - anon_sym_function, - anon_sym_private, - anon_sym_workgroup, - anon_sym_uniform, - anon_sym_storage, - [10676] = 5, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(801), 1, - sym_ident_pattern_token, - STATE(560), 1, - sym_ident, - STATE(133), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10695] = 4, - ACTIONS(95), 1, - anon_sym_RPAREN, - STATE(446), 1, - sym_interpolation_sample_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(877), 3, - anon_sym_center, - anon_sym_centroid, - anon_sym_sample, - [10712] = 6, - ACTIONS(801), 1, - sym_ident_pattern_token, - ACTIONS(879), 1, - sym__template_args_start, - STATE(417), 1, - sym_ident, - STATE(419), 1, - sym_variable_qualifier, - STATE(498), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10733] = 5, - ACTIONS(9), 1, - anon_sym_AT, - ACTIONS(731), 1, - sym_ident_pattern_token, - STATE(530), 1, - sym_member_ident, - STATE(133), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10752] = 4, - ACTIONS(881), 1, - anon_sym_COMMA, - STATE(403), 1, - aux_sym_case_selectors_repeat1, - ACTIONS(884), 2, - anon_sym_LBRACE, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10768] = 4, - ACTIONS(886), 1, - anon_sym_COMMA, - STATE(403), 1, - aux_sym_case_selectors_repeat1, - ACTIONS(47), 2, - anon_sym_LBRACE, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10784] = 4, - ACTIONS(888), 1, - anon_sym_read, - STATE(661), 1, - sym_access_mode, - ACTIONS(890), 2, - anon_sym_write, - anon_sym_read_write, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10800] = 4, - ACTIONS(892), 1, - anon_sym_COMMA, - STATE(404), 1, - aux_sym_case_selectors_repeat1, - ACTIONS(894), 2, - anon_sym_LBRACE, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10816] = 4, - ACTIONS(888), 1, - anon_sym_read, - STATE(584), 1, - sym_access_mode, - ACTIONS(890), 2, - anon_sym_write, - anon_sym_read_write, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10832] = 4, - ACTIONS(888), 1, - anon_sym_read, - STATE(585), 1, - sym_access_mode, - ACTIONS(890), 2, - anon_sym_write, - anon_sym_read_write, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10848] = 4, - ACTIONS(888), 1, - anon_sym_read, - STATE(578), 1, - sym_access_mode, - ACTIONS(890), 2, - anon_sym_write, - anon_sym_read_write, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10864] = 3, - STATE(423), 1, - sym_interpolation_type_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(896), 3, - anon_sym_perspective, - anon_sym_linear, - anon_sym_flat, - [10878] = 4, - ACTIONS(898), 1, - sym__template_args_end, - STATE(61), 1, - sym_additive_operator, - ACTIONS(666), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10894] = 4, - ACTIONS(888), 1, - anon_sym_read, - STATE(612), 1, - sym_access_mode, - ACTIONS(890), 2, - anon_sym_write, - anon_sym_read_write, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10910] = 5, - ACTIONS(656), 1, - anon_sym_LBRACK, - ACTIONS(658), 1, - anon_sym_DOT, - ACTIONS(678), 1, - anon_sym_RPAREN, - STATE(557), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10928] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(900), 3, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_COLON, - [10939] = 4, - ACTIONS(902), 1, - anon_sym_COMMA, - ACTIONS(904), 1, - anon_sym_RPAREN, - STATE(437), 1, - aux_sym_expression_comma_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10954] = 4, - ACTIONS(801), 1, - sym_ident_pattern_token, - STATE(417), 1, - sym_ident, - STATE(468), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10969] = 3, - ACTIONS(908), 1, - anon_sym_COLON, - ACTIONS(906), 2, - anon_sym_SEMI, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10982] = 4, - ACTIONS(801), 1, - sym_ident_pattern_token, - STATE(417), 1, - sym_ident, - STATE(511), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [10997] = 4, - ACTIONS(801), 1, - sym_ident_pattern_token, - STATE(417), 1, - sym_ident, - STATE(517), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11012] = 4, - ACTIONS(801), 1, - sym_ident_pattern_token, - STATE(417), 1, - sym_ident, - STATE(536), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11027] = 4, - ACTIONS(801), 1, - sym_ident_pattern_token, - STATE(417), 1, - sym_ident, - STATE(634), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11042] = 4, - ACTIONS(910), 1, - anon_sym_COMMA, - ACTIONS(912), 1, - anon_sym_RPAREN, - STATE(139), 1, - sym_attrib_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11057] = 4, - ACTIONS(912), 1, - anon_sym_RPAREN, - ACTIONS(914), 1, - anon_sym_COMMA, - STATE(139), 1, - sym_attrib_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11072] = 4, - ACTIONS(912), 1, - anon_sym_RPAREN, - ACTIONS(916), 1, - anon_sym_COMMA, - STATE(139), 1, - sym_attrib_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11087] = 4, - ACTIONS(918), 1, - anon_sym_COMMA, - ACTIONS(920), 1, - anon_sym_RBRACE, - STATE(433), 1, - aux_sym_struct_body_decl_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11102] = 4, - ACTIONS(910), 1, - anon_sym_COMMA, - ACTIONS(912), 1, - anon_sym_RPAREN, - STATE(135), 1, - sym_attrib_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11117] = 4, - ACTIONS(922), 1, - anon_sym_COMMA, - ACTIONS(925), 1, - anon_sym_RPAREN, - STATE(427), 1, - aux_sym_expression_comma_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11132] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(676), 3, - anon_sym_RPAREN, - anon_sym_LBRACK, - anon_sym_DOT, - [11143] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(884), 3, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_COLON, - [11154] = 4, - ACTIONS(109), 1, - anon_sym_LBRACE, - ACTIONS(927), 1, - anon_sym_if, - STATE(104), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11169] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(929), 3, - anon_sym_RBRACE, - anon_sym_case, - anon_sym_default, - [11180] = 4, - ACTIONS(841), 1, - anon_sym_RPAREN, - ACTIONS(931), 1, - anon_sym_COMMA, - STATE(442), 1, - aux_sym_param_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11195] = 4, - ACTIONS(833), 1, - anon_sym_RBRACE, - ACTIONS(933), 1, - anon_sym_COMMA, - STATE(435), 1, - aux_sym_struct_body_decl_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11210] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(682), 3, - anon_sym_RPAREN, - anon_sym_LBRACK, - anon_sym_DOT, - [11221] = 4, - ACTIONS(935), 1, - anon_sym_COMMA, - ACTIONS(938), 1, - anon_sym_RBRACE, - STATE(435), 1, - aux_sym_struct_body_decl_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11236] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(940), 3, - anon_sym_RBRACE, - anon_sym_case, - anon_sym_default, - [11247] = 4, - ACTIONS(91), 1, - anon_sym_RPAREN, - ACTIONS(942), 1, - anon_sym_COMMA, - STATE(427), 1, - aux_sym_expression_comma_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11262] = 4, - ACTIONS(109), 1, - anon_sym_LBRACE, - ACTIONS(944), 1, - anon_sym_COLON, - STATE(445), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11277] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(946), 3, - anon_sym_RBRACE, - anon_sym_case, - anon_sym_default, - [11288] = 4, - ACTIONS(109), 1, - anon_sym_LBRACE, - ACTIONS(948), 1, - anon_sym_COLON, - STATE(436), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11303] = 4, - ACTIONS(950), 1, - anon_sym_COMMA, - ACTIONS(952), 1, - anon_sym_RPAREN, - STATE(432), 1, - aux_sym_param_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11318] = 4, - ACTIONS(954), 1, - anon_sym_COMMA, - ACTIONS(957), 1, - anon_sym_RPAREN, - STATE(442), 1, - aux_sym_param_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11333] = 4, - ACTIONS(912), 1, - anon_sym_RPAREN, - ACTIONS(959), 1, - anon_sym_COMMA, - STATE(138), 1, - sym_attrib_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11348] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(961), 3, - anon_sym_RBRACE, - anon_sym_case, - anon_sym_default, - [11359] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(963), 3, - anon_sym_RBRACE, - anon_sym_case, - anon_sym_default, - [11370] = 4, - ACTIONS(910), 1, - anon_sym_COMMA, - ACTIONS(912), 1, - anon_sym_RPAREN, - STATE(138), 1, - sym_attrib_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11385] = 2, - ACTIONS(965), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11395] = 3, - ACTIONS(109), 1, - anon_sym_LBRACE, - STATE(101), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11407] = 3, - ACTIONS(825), 1, - sym__template_args_end, - ACTIONS(869), 1, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11419] = 3, - ACTIONS(825), 1, - sym__template_args_end, - ACTIONS(827), 1, - anon_sym_CARET, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11431] = 3, - ACTIONS(801), 1, - sym_ident_pattern_token, - STATE(467), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11443] = 3, - ACTIONS(801), 1, - sym_ident_pattern_token, - STATE(632), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11455] = 2, - ACTIONS(815), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11465] = 2, - ACTIONS(861), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11475] = 2, - ACTIONS(865), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11485] = 2, - ACTIONS(847), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11495] = 3, - ACTIONS(801), 1, - sym_ident_pattern_token, - STATE(588), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11507] = 3, - ACTIONS(967), 1, - anon_sym_f16, - STATE(586), 1, - sym_extension_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11519] = 2, - ACTIONS(867), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11529] = 2, - ACTIONS(863), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11539] = 2, - ACTIONS(807), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11549] = 2, - ACTIONS(849), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11559] = 3, - ACTIONS(109), 1, - anon_sym_LBRACE, - STATE(431), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11571] = 3, - ACTIONS(969), 1, - anon_sym_SEMI, - ACTIONS(971), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11583] = 3, - ACTIONS(109), 1, - anon_sym_LBRACE, - STATE(348), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11595] = 2, - ACTIONS(835), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11605] = 3, - ACTIONS(973), 1, - anon_sym_LBRACE, - STATE(341), 1, - sym_struct_body_decl, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11617] = 3, - ACTIONS(975), 1, - anon_sym_SEMI, - ACTIONS(977), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11629] = 3, - ACTIONS(979), 1, - anon_sym_SEMI, - ACTIONS(981), 1, - anon_sym_if, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11641] = 3, - ACTIONS(255), 1, - anon_sym_LPAREN, - STATE(321), 1, - sym_paren_expression, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11653] = 3, - ACTIONS(109), 1, - anon_sym_LBRACE, - STATE(444), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11665] = 2, - ACTIONS(983), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11675] = 3, - ACTIONS(985), 1, - anon_sym_LPAREN, - STATE(318), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11687] = 3, - ACTIONS(321), 1, - anon_sym_LPAREN, - STATE(270), 1, - sym_paren_expression, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11699] = 3, - ACTIONS(987), 1, - anon_sym_COMMA, - ACTIONS(989), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11711] = 3, - ACTIONS(991), 1, - anon_sym_LPAREN, - STATE(152), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11723] = 3, - ACTIONS(993), 1, - anon_sym_LPAREN, - STATE(267), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11735] = 3, - ACTIONS(299), 1, - anon_sym_LPAREN, - STATE(240), 1, - sym_paren_expression, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11747] = 2, - ACTIONS(995), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11757] = 3, - ACTIONS(997), 1, - anon_sym_LPAREN, - STATE(222), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11769] = 3, - ACTIONS(109), 1, - anon_sym_LBRACE, - STATE(94), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11781] = 3, - ACTIONS(109), 1, - anon_sym_LBRACE, - STATE(103), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11793] = 3, - ACTIONS(277), 1, - anon_sym_LPAREN, - STATE(244), 1, - sym_paren_expression, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11805] = 3, - ACTIONS(999), 1, - anon_sym_LPAREN, - STATE(178), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11817] = 3, - ACTIONS(1001), 1, - anon_sym_COMMA, - ACTIONS(1003), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11829] = 3, - ACTIONS(343), 1, - anon_sym_LPAREN, - STATE(181), 1, - sym_paren_expression, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11841] = 2, - ACTIONS(957), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11851] = 2, - ACTIONS(1005), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11861] = 3, - ACTIONS(1007), 1, - anon_sym_COMMA, - ACTIONS(1009), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11873] = 2, - ACTIONS(925), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11883] = 3, - ACTIONS(43), 1, - anon_sym_LPAREN, - STATE(155), 1, - sym_paren_expression, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11895] = 2, - ACTIONS(809), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11905] = 3, - ACTIONS(1011), 1, - anon_sym_SEMI, - ACTIONS(1013), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11917] = 2, - ACTIONS(938), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11927] = 2, - ACTIONS(1015), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11937] = 2, - ACTIONS(1017), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11947] = 3, - ACTIONS(109), 1, - anon_sym_LBRACE, - STATE(345), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11959] = 2, - ACTIONS(1019), 2, - anon_sym_SEMI, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11969] = 2, - ACTIONS(817), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11979] = 3, - ACTIONS(1021), 1, - anon_sym_LPAREN, - STATE(242), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [11991] = 3, - ACTIONS(1023), 1, - anon_sym_LPAREN, - ACTIONS(1025), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12003] = 3, - ACTIONS(825), 1, - sym__template_args_end, - ACTIONS(851), 1, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12015] = 2, - ACTIONS(1027), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12025] = 2, - ACTIONS(1029), 2, - anon_sym_SEMI, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12035] = 3, - ACTIONS(1023), 1, - anon_sym_LPAREN, - ACTIONS(1031), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12047] = 3, - ACTIONS(1033), 1, - anon_sym_LBRACE, - ACTIONS(1035), 1, - anon_sym_DASH_GT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12059] = 2, - ACTIONS(1037), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12069] = 3, - ACTIONS(109), 1, - anon_sym_LBRACE, - STATE(93), 1, - sym_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12081] = 2, - ACTIONS(871), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12091] = 3, - ACTIONS(1039), 1, - anon_sym_LBRACE, - STATE(589), 1, - sym_continuing_compound_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12103] = 3, - ACTIONS(1041), 1, - anon_sym_SEMI, - ACTIONS(1043), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12115] = 2, - ACTIONS(1045), 2, - anon_sym_SEMI, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12125] = 3, - ACTIONS(1047), 1, - anon_sym_COMMA, - ACTIONS(1049), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12137] = 3, - ACTIONS(1051), 1, - anon_sym_LBRACE, - ACTIONS(1053), 1, - anon_sym_DASH_GT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12149] = 2, - ACTIONS(1055), 2, - anon_sym_SEMI, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12159] = 2, - ACTIONS(1057), 2, - anon_sym_SEMI, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12169] = 2, - ACTIONS(1059), 2, - anon_sym_SEMI, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12179] = 3, - ACTIONS(1061), 1, - anon_sym_COMMA, - ACTIONS(1063), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12191] = 2, - ACTIONS(1065), 2, - anon_sym_SEMI, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12201] = 2, - ACTIONS(1067), 2, - anon_sym_SEMI, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12211] = 3, - ACTIONS(1069), 1, - anon_sym_SEMI, - ACTIONS(1071), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12223] = 2, - ACTIONS(1031), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12232] = 2, - ACTIONS(1073), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12241] = 2, - ACTIONS(1075), 1, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12250] = 2, - ACTIONS(1077), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12259] = 2, - ACTIONS(1079), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12268] = 2, - ACTIONS(1081), 1, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12277] = 2, - ACTIONS(1083), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12286] = 2, - ACTIONS(1085), 1, - sym_ident_pattern_token, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12295] = 2, - ACTIONS(1087), 1, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12304] = 2, - ACTIONS(1025), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12313] = 2, - ACTIONS(95), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12322] = 2, - ACTIONS(1089), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12331] = 2, - ACTIONS(1091), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12340] = 2, - ACTIONS(1093), 1, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12349] = 2, - ACTIONS(1095), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12358] = 2, - ACTIONS(1097), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12367] = 2, - ACTIONS(1099), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12376] = 2, - ACTIONS(1101), 1, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12385] = 2, - ACTIONS(1103), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12394] = 2, - ACTIONS(1105), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12403] = 2, - ACTIONS(697), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12412] = 2, - ACTIONS(1107), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12421] = 2, - ACTIONS(1027), 1, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12430] = 2, - ACTIONS(1109), 1, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12439] = 2, - ACTIONS(1111), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12448] = 2, - ACTIONS(1113), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12457] = 2, - ACTIONS(1115), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12466] = 2, - ACTIONS(1117), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12475] = 2, - ACTIONS(1119), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12484] = 2, - ACTIONS(1121), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12493] = 2, - ACTIONS(979), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12502] = 2, - ACTIONS(1123), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12511] = 2, - ACTIONS(1125), 1, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12520] = 2, - ACTIONS(1127), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12529] = 2, - ACTIONS(1129), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12538] = 2, - ACTIONS(717), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12547] = 2, - ACTIONS(1131), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12556] = 2, - ACTIONS(1133), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12565] = 2, - ACTIONS(1135), 1, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12574] = 2, - ACTIONS(1137), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12583] = 2, - ACTIONS(1139), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12592] = 2, - ACTIONS(139), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12601] = 2, - ACTIONS(1141), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12610] = 2, - ACTIONS(1143), 1, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12619] = 2, - ACTIONS(1145), 1, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12628] = 2, - ACTIONS(1147), 1, - anon_sym_CARET, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12637] = 2, - ACTIONS(1149), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12646] = 2, - ACTIONS(1151), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12655] = 2, - ACTIONS(1153), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12664] = 2, - ACTIONS(1155), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12673] = 2, - ACTIONS(1157), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12682] = 2, - ACTIONS(1159), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12691] = 2, - ACTIONS(1161), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12700] = 2, - ACTIONS(1163), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12709] = 2, - ACTIONS(1165), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12718] = 2, - ACTIONS(1167), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12727] = 2, - ACTIONS(1169), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12736] = 2, - ACTIONS(1171), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12745] = 2, - ACTIONS(1173), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12754] = 2, - ACTIONS(1175), 1, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12763] = 2, - ACTIONS(1177), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12772] = 2, - ACTIONS(1179), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12781] = 2, - ACTIONS(1181), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12790] = 2, - ACTIONS(1183), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12799] = 2, - ACTIONS(1185), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12808] = 2, - ACTIONS(1187), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12817] = 2, - ACTIONS(1189), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12826] = 2, - ACTIONS(1191), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12835] = 2, - ACTIONS(1193), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12844] = 2, - ACTIONS(1195), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12853] = 2, - ACTIONS(1197), 1, - anon_sym_CARET, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12862] = 2, - ACTIONS(1199), 1, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12871] = 2, - ACTIONS(1201), 1, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12880] = 2, - ACTIONS(1203), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12889] = 2, - ACTIONS(1205), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12898] = 2, - ACTIONS(1207), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12907] = 2, - ACTIONS(93), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12916] = 2, - ACTIONS(1209), 1, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12925] = 2, - ACTIONS(1211), 1, - anon_sym_PIPE_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12934] = 2, - ACTIONS(1213), 1, - anon_sym_AMP_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12943] = 2, - ACTIONS(1215), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12952] = 2, - ACTIONS(1217), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12961] = 2, - ACTIONS(927), 1, - anon_sym_if, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12970] = 2, - ACTIONS(1219), 1, - sym_ident_pattern_token, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12979] = 2, - ACTIONS(1221), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12988] = 2, - ACTIONS(1223), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [12997] = 2, - ACTIONS(1225), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13006] = 2, - ACTIONS(1227), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13015] = 2, - ACTIONS(1229), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13024] = 2, - ACTIONS(898), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13033] = 2, - ACTIONS(1231), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13042] = 2, - ACTIONS(1233), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13051] = 2, - ACTIONS(489), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13060] = 2, - ACTIONS(1235), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13069] = 2, - ACTIONS(1237), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13078] = 2, - ACTIONS(1239), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13087] = 2, - ACTIONS(1241), 1, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13096] = 2, - ACTIONS(1243), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13105] = 2, - ACTIONS(1245), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13114] = 2, - ACTIONS(1247), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13123] = 2, - ACTIONS(1249), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13132] = 2, - ACTIONS(1251), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13141] = 2, - ACTIONS(1253), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13150] = 2, - ACTIONS(1255), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13159] = 2, - ACTIONS(1257), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13168] = 2, - ACTIONS(1259), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13177] = 2, - ACTIONS(1261), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13186] = 2, - ACTIONS(1263), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13195] = 2, - ACTIONS(1265), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13204] = 2, - ACTIONS(1267), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13213] = 2, - ACTIONS(1269), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13222] = 2, - ACTIONS(233), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13231] = 2, - ACTIONS(977), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13240] = 2, - ACTIONS(373), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13249] = 2, - ACTIONS(1271), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13258] = 2, - ACTIONS(1273), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13267] = 2, - ACTIONS(1275), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13276] = 2, - ACTIONS(1277), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13285] = 2, - ACTIONS(1279), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13294] = 2, - ACTIONS(1281), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13303] = 2, - ACTIONS(1283), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13312] = 2, - ACTIONS(1285), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13321] = 2, - ACTIONS(1287), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13330] = 2, - ACTIONS(1289), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13339] = 2, - ACTIONS(1291), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13348] = 2, - ACTIONS(1293), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13357] = 2, - ACTIONS(1295), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13366] = 2, - ACTIONS(1297), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13375] = 2, - ACTIONS(1299), 1, - ts_builtin_sym_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13384] = 2, - ACTIONS(1301), 1, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13393] = 2, - ACTIONS(1303), 1, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13402] = 2, - ACTIONS(1305), 1, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13411] = 2, - ACTIONS(1307), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13420] = 2, - ACTIONS(1309), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13429] = 2, - ACTIONS(1311), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13438] = 2, - ACTIONS(1313), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13447] = 2, - ACTIONS(1315), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13456] = 2, - ACTIONS(1317), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13465] = 2, - ACTIONS(367), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13474] = 2, - ACTIONS(1319), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13483] = 2, - ACTIONS(1321), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13492] = 2, - ACTIONS(1323), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13501] = 2, - ACTIONS(1325), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13510] = 2, - ACTIONS(1327), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13519] = 2, - ACTIONS(1329), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13528] = 2, - ACTIONS(1331), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13537] = 2, - ACTIONS(1333), 1, - sym__template_args_start, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13546] = 2, - ACTIONS(1335), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13555] = 2, - ACTIONS(1337), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13564] = 2, - ACTIONS(1339), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13573] = 2, - ACTIONS(1341), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13582] = 2, - ACTIONS(1343), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [13591] = 2, - ACTIONS(1345), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, -}; - -static const uint32_t ts_small_parse_table_map[] = { - [SMALL_STATE(93)] = 0, - [SMALL_STATE(94)] = 71, - [SMALL_STATE(95)] = 142, - [SMALL_STATE(96)] = 212, - [SMALL_STATE(97)] = 282, - [SMALL_STATE(98)] = 352, - [SMALL_STATE(99)] = 422, - [SMALL_STATE(100)] = 492, - [SMALL_STATE(101)] = 562, - [SMALL_STATE(102)] = 632, - [SMALL_STATE(103)] = 702, - [SMALL_STATE(104)] = 772, - [SMALL_STATE(105)] = 842, - [SMALL_STATE(106)] = 912, - [SMALL_STATE(107)] = 981, - [SMALL_STATE(108)] = 1050, - [SMALL_STATE(109)] = 1119, - [SMALL_STATE(110)] = 1220, - [SMALL_STATE(111)] = 1321, - [SMALL_STATE(112)] = 1422, - [SMALL_STATE(113)] = 1523, - [SMALL_STATE(114)] = 1617, - [SMALL_STATE(115)] = 1711, - [SMALL_STATE(116)] = 1805, - [SMALL_STATE(117)] = 1899, - [SMALL_STATE(118)] = 1993, - [SMALL_STATE(119)] = 2087, - [SMALL_STATE(120)] = 2181, - [SMALL_STATE(121)] = 2275, - [SMALL_STATE(122)] = 2369, - [SMALL_STATE(123)] = 2463, - [SMALL_STATE(124)] = 2557, - [SMALL_STATE(125)] = 2651, - [SMALL_STATE(126)] = 2745, - [SMALL_STATE(127)] = 2839, - [SMALL_STATE(128)] = 2933, - [SMALL_STATE(129)] = 3027, - [SMALL_STATE(130)] = 3121, - [SMALL_STATE(131)] = 3215, - [SMALL_STATE(132)] = 3309, - [SMALL_STATE(133)] = 3403, - [SMALL_STATE(134)] = 3460, - [SMALL_STATE(135)] = 3513, - [SMALL_STATE(136)] = 3566, - [SMALL_STATE(137)] = 3619, - [SMALL_STATE(138)] = 3672, - [SMALL_STATE(139)] = 3725, - [SMALL_STATE(140)] = 3778, - [SMALL_STATE(141)] = 3817, - [SMALL_STATE(142)] = 3854, - [SMALL_STATE(143)] = 3897, - [SMALL_STATE(144)] = 3940, - [SMALL_STATE(145)] = 3983, - [SMALL_STATE(146)] = 4019, - [SMALL_STATE(147)] = 4055, - [SMALL_STATE(148)] = 4091, - [SMALL_STATE(149)] = 4127, - [SMALL_STATE(150)] = 4163, - [SMALL_STATE(151)] = 4199, - [SMALL_STATE(152)] = 4235, - [SMALL_STATE(153)] = 4271, - [SMALL_STATE(154)] = 4307, - [SMALL_STATE(155)] = 4343, - [SMALL_STATE(156)] = 4379, - [SMALL_STATE(157)] = 4415, - [SMALL_STATE(158)] = 4451, - [SMALL_STATE(159)] = 4487, - [SMALL_STATE(160)] = 4523, - [SMALL_STATE(161)] = 4559, - [SMALL_STATE(162)] = 4626, - [SMALL_STATE(163)] = 4668, - [SMALL_STATE(164)] = 4702, - [SMALL_STATE(165)] = 4736, - [SMALL_STATE(166)] = 4770, - [SMALL_STATE(167)] = 4804, - [SMALL_STATE(168)] = 4838, - [SMALL_STATE(169)] = 4870, - [SMALL_STATE(170)] = 4908, - [SMALL_STATE(171)] = 4946, - [SMALL_STATE(172)] = 4980, - [SMALL_STATE(173)] = 5018, - [SMALL_STATE(174)] = 5049, - [SMALL_STATE(175)] = 5080, - [SMALL_STATE(176)] = 5111, - [SMALL_STATE(177)] = 5142, - [SMALL_STATE(178)] = 5173, - [SMALL_STATE(179)] = 5204, - [SMALL_STATE(180)] = 5261, - [SMALL_STATE(181)] = 5292, - [SMALL_STATE(182)] = 5323, - [SMALL_STATE(183)] = 5356, - [SMALL_STATE(184)] = 5387, - [SMALL_STATE(185)] = 5418, - [SMALL_STATE(186)] = 5449, - [SMALL_STATE(187)] = 5480, - [SMALL_STATE(188)] = 5511, - [SMALL_STATE(189)] = 5542, - [SMALL_STATE(190)] = 5573, - [SMALL_STATE(191)] = 5604, - [SMALL_STATE(192)] = 5661, - [SMALL_STATE(193)] = 5718, - [SMALL_STATE(194)] = 5752, - [SMALL_STATE(195)] = 5786, - [SMALL_STATE(196)] = 5816, - [SMALL_STATE(197)] = 5845, - [SMALL_STATE(198)] = 5874, - [SMALL_STATE(199)] = 5903, - [SMALL_STATE(200)] = 5932, - [SMALL_STATE(201)] = 5961, - [SMALL_STATE(202)] = 5990, - [SMALL_STATE(203)] = 6019, - [SMALL_STATE(204)] = 6047, - [SMALL_STATE(205)] = 6081, - [SMALL_STATE(206)] = 6109, - [SMALL_STATE(207)] = 6139, - [SMALL_STATE(208)] = 6173, - [SMALL_STATE(209)] = 6207, - [SMALL_STATE(210)] = 6241, - [SMALL_STATE(211)] = 6271, - [SMALL_STATE(212)] = 6299, - [SMALL_STATE(213)] = 6333, - [SMALL_STATE(214)] = 6367, - [SMALL_STATE(215)] = 6396, - [SMALL_STATE(216)] = 6423, - [SMALL_STATE(217)] = 6450, - [SMALL_STATE(218)] = 6477, - [SMALL_STATE(219)] = 6504, - [SMALL_STATE(220)] = 6531, - [SMALL_STATE(221)] = 6558, - [SMALL_STATE(222)] = 6585, - [SMALL_STATE(223)] = 6612, - [SMALL_STATE(224)] = 6639, - [SMALL_STATE(225)] = 6666, - [SMALL_STATE(226)] = 6693, - [SMALL_STATE(227)] = 6720, - [SMALL_STATE(228)] = 6747, - [SMALL_STATE(229)] = 6774, - [SMALL_STATE(230)] = 6801, - [SMALL_STATE(231)] = 6828, - [SMALL_STATE(232)] = 6855, - [SMALL_STATE(233)] = 6882, - [SMALL_STATE(234)] = 6909, - [SMALL_STATE(235)] = 6936, - [SMALL_STATE(236)] = 6963, - [SMALL_STATE(237)] = 6990, - [SMALL_STATE(238)] = 7017, - [SMALL_STATE(239)] = 7044, - [SMALL_STATE(240)] = 7071, - [SMALL_STATE(241)] = 7098, - [SMALL_STATE(242)] = 7125, - [SMALL_STATE(243)] = 7152, - [SMALL_STATE(244)] = 7179, - [SMALL_STATE(245)] = 7206, - [SMALL_STATE(246)] = 7233, - [SMALL_STATE(247)] = 7260, - [SMALL_STATE(248)] = 7292, - [SMALL_STATE(249)] = 7322, - [SMALL_STATE(250)] = 7348, - [SMALL_STATE(251)] = 7378, - [SMALL_STATE(252)] = 7404, - [SMALL_STATE(253)] = 7436, - [SMALL_STATE(254)] = 7464, - [SMALL_STATE(255)] = 7496, - [SMALL_STATE(256)] = 7520, - [SMALL_STATE(257)] = 7550, - [SMALL_STATE(258)] = 7577, - [SMALL_STATE(259)] = 7602, - [SMALL_STATE(260)] = 7627, - [SMALL_STATE(261)] = 7652, - [SMALL_STATE(262)] = 7677, - [SMALL_STATE(263)] = 7702, - [SMALL_STATE(264)] = 7725, - [SMALL_STATE(265)] = 7750, - [SMALL_STATE(266)] = 7775, - [SMALL_STATE(267)] = 7800, - [SMALL_STATE(268)] = 7825, - [SMALL_STATE(269)] = 7850, - [SMALL_STATE(270)] = 7873, - [SMALL_STATE(271)] = 7898, - [SMALL_STATE(272)] = 7923, - [SMALL_STATE(273)] = 7948, - [SMALL_STATE(274)] = 7973, - [SMALL_STATE(275)] = 7998, - [SMALL_STATE(276)] = 8023, - [SMALL_STATE(277)] = 8048, - [SMALL_STATE(278)] = 8073, - [SMALL_STATE(279)] = 8098, - [SMALL_STATE(280)] = 8121, - [SMALL_STATE(281)] = 8144, - [SMALL_STATE(282)] = 8169, - [SMALL_STATE(283)] = 8194, - [SMALL_STATE(284)] = 8219, - [SMALL_STATE(285)] = 8244, - [SMALL_STATE(286)] = 8269, - [SMALL_STATE(287)] = 8294, - [SMALL_STATE(288)] = 8319, - [SMALL_STATE(289)] = 8349, - [SMALL_STATE(290)] = 8375, - [SMALL_STATE(291)] = 8403, - [SMALL_STATE(292)] = 8427, - [SMALL_STATE(293)] = 8457, - [SMALL_STATE(294)] = 8485, - [SMALL_STATE(295)] = 8515, - [SMALL_STATE(296)] = 8537, - [SMALL_STATE(297)] = 8558, - [SMALL_STATE(298)] = 8581, - [SMALL_STATE(299)] = 8608, - [SMALL_STATE(300)] = 8631, - [SMALL_STATE(301)] = 8654, - [SMALL_STATE(302)] = 8675, - [SMALL_STATE(303)] = 8698, - [SMALL_STATE(304)] = 8721, - [SMALL_STATE(305)] = 8744, - [SMALL_STATE(306)] = 8767, - [SMALL_STATE(307)] = 8790, - [SMALL_STATE(308)] = 8817, - [SMALL_STATE(309)] = 8840, - [SMALL_STATE(310)] = 8861, - [SMALL_STATE(311)] = 8884, - [SMALL_STATE(312)] = 8912, - [SMALL_STATE(313)] = 8940, - [SMALL_STATE(314)] = 8968, - [SMALL_STATE(315)] = 8992, - [SMALL_STATE(316)] = 9015, - [SMALL_STATE(317)] = 9036, - [SMALL_STATE(318)] = 9059, - [SMALL_STATE(319)] = 9080, - [SMALL_STATE(320)] = 9101, - [SMALL_STATE(321)] = 9122, - [SMALL_STATE(322)] = 9143, - [SMALL_STATE(323)] = 9166, - [SMALL_STATE(324)] = 9187, - [SMALL_STATE(325)] = 9208, - [SMALL_STATE(326)] = 9231, - [SMALL_STATE(327)] = 9254, - [SMALL_STATE(328)] = 9275, - [SMALL_STATE(329)] = 9296, - [SMALL_STATE(330)] = 9317, - [SMALL_STATE(331)] = 9338, - [SMALL_STATE(332)] = 9359, - [SMALL_STATE(333)] = 9380, - [SMALL_STATE(334)] = 9401, - [SMALL_STATE(335)] = 9424, - [SMALL_STATE(336)] = 9447, - [SMALL_STATE(337)] = 9468, - [SMALL_STATE(338)] = 9489, - [SMALL_STATE(339)] = 9510, - [SMALL_STATE(340)] = 9531, - [SMALL_STATE(341)] = 9554, - [SMALL_STATE(342)] = 9574, - [SMALL_STATE(343)] = 9594, - [SMALL_STATE(344)] = 9614, - [SMALL_STATE(345)] = 9634, - [SMALL_STATE(346)] = 9654, - [SMALL_STATE(347)] = 9676, - [SMALL_STATE(348)] = 9696, - [SMALL_STATE(349)] = 9716, - [SMALL_STATE(350)] = 9735, - [SMALL_STATE(351)] = 9754, - [SMALL_STATE(352)] = 9773, - [SMALL_STATE(353)] = 9792, - [SMALL_STATE(354)] = 9811, - [SMALL_STATE(355)] = 9836, - [SMALL_STATE(356)] = 9864, - [SMALL_STATE(357)] = 9884, - [SMALL_STATE(358)] = 9912, - [SMALL_STATE(359)] = 9928, - [SMALL_STATE(360)] = 9944, - [SMALL_STATE(361)] = 9959, - [SMALL_STATE(362)] = 9974, - [SMALL_STATE(363)] = 9999, - [SMALL_STATE(364)] = 10014, - [SMALL_STATE(365)] = 10035, - [SMALL_STATE(366)] = 10060, - [SMALL_STATE(367)] = 10075, - [SMALL_STATE(368)] = 10098, - [SMALL_STATE(369)] = 10115, - [SMALL_STATE(370)] = 10140, - [SMALL_STATE(371)] = 10165, - [SMALL_STATE(372)] = 10190, - [SMALL_STATE(373)] = 10205, - [SMALL_STATE(374)] = 10226, - [SMALL_STATE(375)] = 10251, - [SMALL_STATE(376)] = 10268, - [SMALL_STATE(377)] = 10293, - [SMALL_STATE(378)] = 10318, - [SMALL_STATE(379)] = 10335, - [SMALL_STATE(380)] = 10350, - [SMALL_STATE(381)] = 10365, - [SMALL_STATE(382)] = 10382, - [SMALL_STATE(383)] = 10405, - [SMALL_STATE(384)] = 10420, - [SMALL_STATE(385)] = 10435, - [SMALL_STATE(386)] = 10450, - [SMALL_STATE(387)] = 10465, - [SMALL_STATE(388)] = 10482, - [SMALL_STATE(389)] = 10496, - [SMALL_STATE(390)] = 10512, - [SMALL_STATE(391)] = 10528, - [SMALL_STATE(392)] = 10550, - [SMALL_STATE(393)] = 10570, - [SMALL_STATE(394)] = 10584, - [SMALL_STATE(395)] = 10606, - [SMALL_STATE(396)] = 10622, - [SMALL_STATE(397)] = 10644, - [SMALL_STATE(398)] = 10660, - [SMALL_STATE(399)] = 10676, - [SMALL_STATE(400)] = 10695, - [SMALL_STATE(401)] = 10712, - [SMALL_STATE(402)] = 10733, - [SMALL_STATE(403)] = 10752, - [SMALL_STATE(404)] = 10768, - [SMALL_STATE(405)] = 10784, - [SMALL_STATE(406)] = 10800, - [SMALL_STATE(407)] = 10816, - [SMALL_STATE(408)] = 10832, - [SMALL_STATE(409)] = 10848, - [SMALL_STATE(410)] = 10864, - [SMALL_STATE(411)] = 10878, - [SMALL_STATE(412)] = 10894, - [SMALL_STATE(413)] = 10910, - [SMALL_STATE(414)] = 10928, - [SMALL_STATE(415)] = 10939, - [SMALL_STATE(416)] = 10954, - [SMALL_STATE(417)] = 10969, - [SMALL_STATE(418)] = 10982, - [SMALL_STATE(419)] = 10997, - [SMALL_STATE(420)] = 11012, - [SMALL_STATE(421)] = 11027, - [SMALL_STATE(422)] = 11042, - [SMALL_STATE(423)] = 11057, - [SMALL_STATE(424)] = 11072, - [SMALL_STATE(425)] = 11087, - [SMALL_STATE(426)] = 11102, - [SMALL_STATE(427)] = 11117, - [SMALL_STATE(428)] = 11132, - [SMALL_STATE(429)] = 11143, - [SMALL_STATE(430)] = 11154, - [SMALL_STATE(431)] = 11169, - [SMALL_STATE(432)] = 11180, - [SMALL_STATE(433)] = 11195, - [SMALL_STATE(434)] = 11210, - [SMALL_STATE(435)] = 11221, - [SMALL_STATE(436)] = 11236, - [SMALL_STATE(437)] = 11247, - [SMALL_STATE(438)] = 11262, - [SMALL_STATE(439)] = 11277, - [SMALL_STATE(440)] = 11288, - [SMALL_STATE(441)] = 11303, - [SMALL_STATE(442)] = 11318, - [SMALL_STATE(443)] = 11333, - [SMALL_STATE(444)] = 11348, - [SMALL_STATE(445)] = 11359, - [SMALL_STATE(446)] = 11370, - [SMALL_STATE(447)] = 11385, - [SMALL_STATE(448)] = 11395, - [SMALL_STATE(449)] = 11407, - [SMALL_STATE(450)] = 11419, - [SMALL_STATE(451)] = 11431, - [SMALL_STATE(452)] = 11443, - [SMALL_STATE(453)] = 11455, - [SMALL_STATE(454)] = 11465, - [SMALL_STATE(455)] = 11475, - [SMALL_STATE(456)] = 11485, - [SMALL_STATE(457)] = 11495, - [SMALL_STATE(458)] = 11507, - [SMALL_STATE(459)] = 11519, - [SMALL_STATE(460)] = 11529, - [SMALL_STATE(461)] = 11539, - [SMALL_STATE(462)] = 11549, - [SMALL_STATE(463)] = 11559, - [SMALL_STATE(464)] = 11571, - [SMALL_STATE(465)] = 11583, - [SMALL_STATE(466)] = 11595, - [SMALL_STATE(467)] = 11605, - [SMALL_STATE(468)] = 11617, - [SMALL_STATE(469)] = 11629, - [SMALL_STATE(470)] = 11641, - [SMALL_STATE(471)] = 11653, - [SMALL_STATE(472)] = 11665, - [SMALL_STATE(473)] = 11675, - [SMALL_STATE(474)] = 11687, - [SMALL_STATE(475)] = 11699, - [SMALL_STATE(476)] = 11711, - [SMALL_STATE(477)] = 11723, - [SMALL_STATE(478)] = 11735, - [SMALL_STATE(479)] = 11747, - [SMALL_STATE(480)] = 11757, - [SMALL_STATE(481)] = 11769, - [SMALL_STATE(482)] = 11781, - [SMALL_STATE(483)] = 11793, - [SMALL_STATE(484)] = 11805, - [SMALL_STATE(485)] = 11817, - [SMALL_STATE(486)] = 11829, - [SMALL_STATE(487)] = 11841, - [SMALL_STATE(488)] = 11851, - [SMALL_STATE(489)] = 11861, - [SMALL_STATE(490)] = 11873, - [SMALL_STATE(491)] = 11883, - [SMALL_STATE(492)] = 11895, - [SMALL_STATE(493)] = 11905, - [SMALL_STATE(494)] = 11917, - [SMALL_STATE(495)] = 11927, - [SMALL_STATE(496)] = 11937, - [SMALL_STATE(497)] = 11947, - [SMALL_STATE(498)] = 11959, - [SMALL_STATE(499)] = 11969, - [SMALL_STATE(500)] = 11979, - [SMALL_STATE(501)] = 11991, - [SMALL_STATE(502)] = 12003, - [SMALL_STATE(503)] = 12015, - [SMALL_STATE(504)] = 12025, - [SMALL_STATE(505)] = 12035, - [SMALL_STATE(506)] = 12047, - [SMALL_STATE(507)] = 12059, - [SMALL_STATE(508)] = 12069, - [SMALL_STATE(509)] = 12081, - [SMALL_STATE(510)] = 12091, - [SMALL_STATE(511)] = 12103, - [SMALL_STATE(512)] = 12115, - [SMALL_STATE(513)] = 12125, - [SMALL_STATE(514)] = 12137, - [SMALL_STATE(515)] = 12149, - [SMALL_STATE(516)] = 12159, - [SMALL_STATE(517)] = 12169, - [SMALL_STATE(518)] = 12179, - [SMALL_STATE(519)] = 12191, - [SMALL_STATE(520)] = 12201, - [SMALL_STATE(521)] = 12211, - [SMALL_STATE(522)] = 12223, - [SMALL_STATE(523)] = 12232, - [SMALL_STATE(524)] = 12241, - [SMALL_STATE(525)] = 12250, - [SMALL_STATE(526)] = 12259, - [SMALL_STATE(527)] = 12268, - [SMALL_STATE(528)] = 12277, - [SMALL_STATE(529)] = 12286, - [SMALL_STATE(530)] = 12295, - [SMALL_STATE(531)] = 12304, - [SMALL_STATE(532)] = 12313, - [SMALL_STATE(533)] = 12322, - [SMALL_STATE(534)] = 12331, - [SMALL_STATE(535)] = 12340, - [SMALL_STATE(536)] = 12349, - [SMALL_STATE(537)] = 12358, - [SMALL_STATE(538)] = 12367, - [SMALL_STATE(539)] = 12376, - [SMALL_STATE(540)] = 12385, - [SMALL_STATE(541)] = 12394, - [SMALL_STATE(542)] = 12403, - [SMALL_STATE(543)] = 12412, - [SMALL_STATE(544)] = 12421, - [SMALL_STATE(545)] = 12430, - [SMALL_STATE(546)] = 12439, - [SMALL_STATE(547)] = 12448, - [SMALL_STATE(548)] = 12457, - [SMALL_STATE(549)] = 12466, - [SMALL_STATE(550)] = 12475, - [SMALL_STATE(551)] = 12484, - [SMALL_STATE(552)] = 12493, - [SMALL_STATE(553)] = 12502, - [SMALL_STATE(554)] = 12511, - [SMALL_STATE(555)] = 12520, - [SMALL_STATE(556)] = 12529, - [SMALL_STATE(557)] = 12538, - [SMALL_STATE(558)] = 12547, - [SMALL_STATE(559)] = 12556, - [SMALL_STATE(560)] = 12565, - [SMALL_STATE(561)] = 12574, - [SMALL_STATE(562)] = 12583, - [SMALL_STATE(563)] = 12592, - [SMALL_STATE(564)] = 12601, - [SMALL_STATE(565)] = 12610, - [SMALL_STATE(566)] = 12619, - [SMALL_STATE(567)] = 12628, - [SMALL_STATE(568)] = 12637, - [SMALL_STATE(569)] = 12646, - [SMALL_STATE(570)] = 12655, - [SMALL_STATE(571)] = 12664, - [SMALL_STATE(572)] = 12673, - [SMALL_STATE(573)] = 12682, - [SMALL_STATE(574)] = 12691, - [SMALL_STATE(575)] = 12700, - [SMALL_STATE(576)] = 12709, - [SMALL_STATE(577)] = 12718, - [SMALL_STATE(578)] = 12727, - [SMALL_STATE(579)] = 12736, - [SMALL_STATE(580)] = 12745, - [SMALL_STATE(581)] = 12754, - [SMALL_STATE(582)] = 12763, - [SMALL_STATE(583)] = 12772, - [SMALL_STATE(584)] = 12781, - [SMALL_STATE(585)] = 12790, - [SMALL_STATE(586)] = 12799, - [SMALL_STATE(587)] = 12808, - [SMALL_STATE(588)] = 12817, - [SMALL_STATE(589)] = 12826, - [SMALL_STATE(590)] = 12835, - [SMALL_STATE(591)] = 12844, - [SMALL_STATE(592)] = 12853, - [SMALL_STATE(593)] = 12862, - [SMALL_STATE(594)] = 12871, - [SMALL_STATE(595)] = 12880, - [SMALL_STATE(596)] = 12889, - [SMALL_STATE(597)] = 12898, - [SMALL_STATE(598)] = 12907, - [SMALL_STATE(599)] = 12916, - [SMALL_STATE(600)] = 12925, - [SMALL_STATE(601)] = 12934, - [SMALL_STATE(602)] = 12943, - [SMALL_STATE(603)] = 12952, - [SMALL_STATE(604)] = 12961, - [SMALL_STATE(605)] = 12970, - [SMALL_STATE(606)] = 12979, - [SMALL_STATE(607)] = 12988, - [SMALL_STATE(608)] = 12997, - [SMALL_STATE(609)] = 13006, - [SMALL_STATE(610)] = 13015, - [SMALL_STATE(611)] = 13024, - [SMALL_STATE(612)] = 13033, - [SMALL_STATE(613)] = 13042, - [SMALL_STATE(614)] = 13051, - [SMALL_STATE(615)] = 13060, - [SMALL_STATE(616)] = 13069, - [SMALL_STATE(617)] = 13078, - [SMALL_STATE(618)] = 13087, - [SMALL_STATE(619)] = 13096, - [SMALL_STATE(620)] = 13105, - [SMALL_STATE(621)] = 13114, - [SMALL_STATE(622)] = 13123, - [SMALL_STATE(623)] = 13132, - [SMALL_STATE(624)] = 13141, - [SMALL_STATE(625)] = 13150, - [SMALL_STATE(626)] = 13159, - [SMALL_STATE(627)] = 13168, - [SMALL_STATE(628)] = 13177, - [SMALL_STATE(629)] = 13186, - [SMALL_STATE(630)] = 13195, - [SMALL_STATE(631)] = 13204, - [SMALL_STATE(632)] = 13213, - [SMALL_STATE(633)] = 13222, - [SMALL_STATE(634)] = 13231, - [SMALL_STATE(635)] = 13240, - [SMALL_STATE(636)] = 13249, - [SMALL_STATE(637)] = 13258, - [SMALL_STATE(638)] = 13267, - [SMALL_STATE(639)] = 13276, - [SMALL_STATE(640)] = 13285, - [SMALL_STATE(641)] = 13294, - [SMALL_STATE(642)] = 13303, - [SMALL_STATE(643)] = 13312, - [SMALL_STATE(644)] = 13321, - [SMALL_STATE(645)] = 13330, - [SMALL_STATE(646)] = 13339, - [SMALL_STATE(647)] = 13348, - [SMALL_STATE(648)] = 13357, - [SMALL_STATE(649)] = 13366, - [SMALL_STATE(650)] = 13375, - [SMALL_STATE(651)] = 13384, - [SMALL_STATE(652)] = 13393, - [SMALL_STATE(653)] = 13402, - [SMALL_STATE(654)] = 13411, - [SMALL_STATE(655)] = 13420, - [SMALL_STATE(656)] = 13429, - [SMALL_STATE(657)] = 13438, - [SMALL_STATE(658)] = 13447, - [SMALL_STATE(659)] = 13456, - [SMALL_STATE(660)] = 13465, - [SMALL_STATE(661)] = 13474, - [SMALL_STATE(662)] = 13483, - [SMALL_STATE(663)] = 13492, - [SMALL_STATE(664)] = 13501, - [SMALL_STATE(665)] = 13510, - [SMALL_STATE(666)] = 13519, - [SMALL_STATE(667)] = 13528, - [SMALL_STATE(668)] = 13537, - [SMALL_STATE(669)] = 13546, - [SMALL_STATE(670)] = 13555, - [SMALL_STATE(671)] = 13564, - [SMALL_STATE(672)] = 13573, - [SMALL_STATE(673)] = 13582, - [SMALL_STATE(674)] = 13591, -}; - -static const TSParseActionEntry ts_parse_actions[] = { - [0] = {.entry = {.count = 0, .reusable = false}}, - [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), - [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), - [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 0), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), - [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(421), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), - [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(656), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), - [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(154), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(149), - [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), - [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), - [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150), - [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(630), - [47] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 2), - [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(363), - [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(627), - [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(626), - [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(625), - [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(366), - [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(361), - [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(624), - [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(623), - [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(622), - [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(621), - [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(619), - [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(414), - [75] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 3), - [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), - [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), - [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [89] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 3), - [91] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 2), - [93] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), - [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [99] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1), - [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(255), - [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), - [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(420), - [109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(656), - [115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), - [117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(542), - [119] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26), - [121] = {.entry = {.count = 1, .reusable = false}}, SHIFT(23), - [123] = {.entry = {.count = 1, .reusable = false}}, SHIFT(554), - [125] = {.entry = {.count = 1, .reusable = false}}, SHIFT(553), - [127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47), - [129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(552), - [131] = {.entry = {.count = 1, .reusable = false}}, SHIFT(551), - [133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(510), - [135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(18), - [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(28), - [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), - [143] = {.entry = {.count = 1, .reusable = false}}, SHIFT(469), - [145] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(255), - [148] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(99), - [151] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(374), - [154] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(420), - [157] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(630), - [160] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(53), - [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2), - [165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(363), - [168] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(627), - [171] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(626), - [174] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(625), - [177] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(366), - [180] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(361), - [183] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(624), - [186] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(623), - [189] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(622), - [192] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(621), - [195] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(656), - [198] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(369), - [201] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(542), - [204] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(26), - [207] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(23), - [210] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(554), - [213] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(553), - [216] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(47), - [219] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(552), - [222] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(551), - [225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), - [227] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(18), - [230] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2), SHIFT_REPEAT(28), - [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), - [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [239] = {.entry = {.count = 1, .reusable = false}}, SHIFT(300), - [241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(323), - [243] = {.entry = {.count = 1, .reusable = false}}, SHIFT(330), - [245] = {.entry = {.count = 1, .reusable = false}}, SHIFT(336), - [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), - [249] = {.entry = {.count = 1, .reusable = false}}, SHIFT(320), - [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), - [253] = {.entry = {.count = 1, .reusable = false}}, SHIFT(331), - [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [257] = {.entry = {.count = 1, .reusable = false}}, SHIFT(672), - [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [261] = {.entry = {.count = 1, .reusable = false}}, SHIFT(205), - [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(234), - [265] = {.entry = {.count = 1, .reusable = false}}, SHIFT(235), - [267] = {.entry = {.count = 1, .reusable = false}}, SHIFT(236), - [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), - [271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(216), - [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(233), - [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [279] = {.entry = {.count = 1, .reusable = false}}, SHIFT(669), - [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [283] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), - [285] = {.entry = {.count = 1, .reusable = false}}, SHIFT(225), - [287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(224), - [289] = {.entry = {.count = 1, .reusable = false}}, SHIFT(220), - [291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [293] = {.entry = {.count = 1, .reusable = false}}, SHIFT(219), - [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), - [297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(217), - [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [301] = {.entry = {.count = 1, .reusable = false}}, SHIFT(670), - [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(251), - [307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(274), - [309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(281), - [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(287), - [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), - [315] = {.entry = {.count = 1, .reusable = false}}, SHIFT(286), - [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(285), - [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [323] = {.entry = {.count = 1, .reusable = false}}, SHIFT(671), - [325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [327] = {.entry = {.count = 1, .reusable = false}}, SHIFT(168), - [329] = {.entry = {.count = 1, .reusable = false}}, SHIFT(190), - [331] = {.entry = {.count = 1, .reusable = false}}, SHIFT(189), - [333] = {.entry = {.count = 1, .reusable = false}}, SHIFT(187), - [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [337] = {.entry = {.count = 1, .reusable = false}}, SHIFT(185), - [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [341] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), - [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [345] = {.entry = {.count = 1, .reusable = false}}, SHIFT(666), - [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 3), - [353] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 3), - [355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 2), - [357] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 2), - [359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 2), - [361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 1), - [363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 1), - [365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(430), - [367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 4), - [369] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 2), - [371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 2), - [373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 3), - [375] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2), - [377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2), - [379] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2), SHIFT_REPEAT(604), - [382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_clause, 3), - [384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 3), - [386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_if_clause, 4), - [388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_if_clause, 4), - [390] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 4), - [392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 4), - [394] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 2), - [396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), - [398] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_statement, 5), - [400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_statement, 5), - [402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1), - [404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), - [406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 5), - [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 5), - [410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 3), - [412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 3), - [414] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 3), - [416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 3), - [418] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 5), - [420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 5), - [422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 2), - [424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 2), - [426] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 3), - [428] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 3), - [430] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_operator, 1), - [432] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_operator, 1), - [434] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_additive_operator, 1), - [436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_operator, 1), - [438] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_assignment_operator, 1), - [440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_assignment_operator, 1), - [442] = {.entry = {.count = 1, .reusable = false}}, SHIFT(547), - [444] = {.entry = {.count = 1, .reusable = false}}, SHIFT(649), - [446] = {.entry = {.count = 1, .reusable = false}}, SHIFT(453), - [448] = {.entry = {.count = 1, .reusable = false}}, SHIFT(657), - [450] = {.entry = {.count = 1, .reusable = false}}, SHIFT(499), - [452] = {.entry = {.count = 1, .reusable = false}}, SHIFT(492), - [454] = {.entry = {.count = 1, .reusable = false}}, SHIFT(673), - [456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(658), - [458] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_struct_member_repeat1, 2), - [460] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_member_repeat1, 2), SHIFT_REPEAT(294), - [463] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 2), - [465] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 2), - [467] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 9), - [469] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 9), - [471] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attrib_end, 1), - [473] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attrib_end, 1), - [475] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attrib_end, 2), - [477] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attrib_end, 2), - [479] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 7), - [481] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 7), - [483] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 5), - [485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 5), - [487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1), - [489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_callable, 1), - [491] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1), - [493] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ident, 1), - [495] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ident, 1), - [497] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 3), - [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), - [503] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 3), - [505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 2), - [507] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 2), - [509] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singular_expression, 1), - [511] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_singular_expression, 1), - [513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal_int_literal, 1), - [515] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decimal_int_literal, 1), - [517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal_float_literal, 1), - [519] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decimal_float_literal, 1), - [521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_float_literal, 1), - [523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_float_literal, 1), - [525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_int_literal, 1), - [527] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_int_literal, 1), - [529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hex_float_literal, 1), - [531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hex_float_literal, 1), - [533] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paren_expression, 3), - [535] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_paren_expression, 3), - [537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_phrase, 2), - [539] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_phrase, 2), - [541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_expression_list, 3), - [543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_expression_list, 3), - [545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bool_literal, 1), - [547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bool_literal, 1), - [549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 6), - [551] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 6), - [553] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_ident, 1), - [555] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_ident, 1), - [557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_swizzle_name, 1), - [559] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_swizzle_name, 1), - [561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 1), - [563] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 1), - [565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_expression_list, 2), - [567] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_expression_list, 2), - [569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1), - [571] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_literal, 1), - [573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 1), - [575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_expression, 1), - [579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_and_expression, 1), - [581] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_expression, 1), - [583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_or_expression, 1), - [585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_xor_expression, 1), - [587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singular_expression, 2), - [591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_singular_expression, 2), - [593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 4), - [595] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 4), - [597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 1), - [599] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 1), - [601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2), - [603] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2), - [605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), - [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 2), - [613] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2), - [615] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2), SHIFT_REPEAT(192), - [618] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2), SHIFT_REPEAT(294), - [621] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat2, 2), SHIFT_REPEAT(421), - [624] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2), SHIFT_REPEAT(451), - [627] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2), SHIFT_REPEAT(452), - [630] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2), SHIFT_REPEAT(656), - [633] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2), SHIFT_REPEAT(416), - [636] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2), SHIFT_REPEAT(28), - [639] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2), SHIFT_REPEAT(457), - [642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_expression, 3), - [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [646] = {.entry = {.count = 1, .reusable = false}}, SHIFT(106), - [648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_expression, 1), - [650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_expression, 3), - [652] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_expression, 3), - [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(524), - [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), - [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), - [664] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shift_expression, 1), - [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), - [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), - [676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_core_lhs_expression, 1), - [678] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lhs_expression, 1), - [680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [682] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_core_lhs_expression, 3), - [684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), - [686] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), - [688] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(458), - [691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [693] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relational_expression, 1), - [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), - [701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), - [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519), - [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), - [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(640), - [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), - [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), - [715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shift_expression, 3), - [717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lhs_expression, 2), - [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), - [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), - [727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), - [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), - [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), - [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [743] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_directive, 3), - [745] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enable_directive, 3), - [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), - [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), - [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), - [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_directive, 1), - [757] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_global_directive, 1), - [759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), - [763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_decl, 3), - [765] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_decl, 3), - [767] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 5), - [769] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 5), - [771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 3), - [773] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 3), - [775] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 4), - [777] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 4), - [779] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_decl, 3), - [781] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_decl, 3), - [783] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat2, 2), - [785] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_decl, 2), - [787] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_decl, 2), - [789] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_and_expression, 1), - [791] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_or_expression, 1), - [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), - [795] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), - [797] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_and_expression, 1), - [799] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_or_expression, 1), - [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), - [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514), - [805] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relational_expression, 3), - [807] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_texture_and_sampler_types, 7), - [809] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specifier_without_ident, 1), - [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), - [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), - [815] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sampler_type, 1), - [817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_depth_texture_type, 1), - [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), - [825] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bitwise_expression, 3), - [827] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_xor_expression, 3), - [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), - [831] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 3), - [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), - [835] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_texture_and_sampler_types, 1), - [837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3), - [839] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_and_expression, 3), - [841] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 2), - [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), - [845] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_or_expression, 3), - [847] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specifier_without_ident, 5), - [849] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specifier_without_ident, 9), - [851] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_or_expression, 3), - [853] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_switch_statement_repeat1, 2), - [855] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_switch_statement_repeat1, 2), SHIFT_REPEAT(4), - [858] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_switch_statement_repeat1, 2), SHIFT_REPEAT(440), - [861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type_specifier, 5), - [863] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specifier_without_ident, 7), - [865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_texture_and_sampler_types, 5), - [867] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type_specifier, 7), - [869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_and_expression, 3), - [871] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specifier, 1), - [873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(544), - [875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), - [877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), - [879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), - [881] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_selectors_repeat1, 2), SHIFT_REPEAT(7), - [884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_case_selectors_repeat1, 2), - [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [888] = {.entry = {.count = 1, .reusable = false}}, SHIFT(574), - [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574), - [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [894] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 1), - [896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507), - [898] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_element_count_expression, 1), - [900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selector, 1), - [902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 1), - [906] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optionally_typed_ident, 1), - [908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), - [912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), - [916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), - [920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), - [922] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_comma_list_repeat1, 2), SHIFT_REPEAT(34), - [925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_comma_list_repeat1, 2), - [927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 4), - [931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), - [933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), - [935] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_body_decl_repeat1, 2), SHIFT_REPEAT(391), - [938] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_body_decl_repeat1, 2), - [940] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_alone_clause, 2), - [942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), - [946] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_body, 1), - [948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), - [950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), - [952] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 1), - [954] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2), SHIFT_REPEAT(394), - [957] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2), - [959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [961] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_alone_clause, 3), - [963] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 3), - [965] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_value_name, 1), - [967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(587), - [969] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 1), - [971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), - [975] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_constant_decl, 2), - [977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1), - [981] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [983] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 4), - [985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), - [989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), - [991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_member, 4), - [997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [1001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), - [1003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), - [1005] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 3), - [1007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [1009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), - [1011] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 2), - [1013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [1015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_member, 3), - [1017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation_sample_name, 1), - [1019] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_decl, 3), - [1021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [1023] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_callable, 2), - [1025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [1027] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_address_space, 1), - [1029] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_statement, 3), - [1031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [1033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 5), - [1035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [1037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation_type_name, 1), - [1039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [1041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_constant_decl, 3), - [1043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [1045] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optionally_typed_ident, 3), - [1047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [1049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), - [1051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 4), - [1053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [1055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_updating_statement, 1), - [1057] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_call_statement, 1), - [1059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_decl, 4), - [1061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), - [1063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529), - [1065] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decrement_statement, 2), - [1067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_increment_statement, 2), - [1069] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_statement, 1), - [1071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [1073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), - [1075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_texel_format, 1), - [1077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), - [1079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), - [1081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [1083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), - [1085] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_qualifier, 3), - [1087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [1089] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 4), - [1091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2), - [1093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), - [1095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [1097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), - [1099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506), - [1101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [1103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [1105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), - [1107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_decl, 4), - [1109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [1111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_constant_decl, 4), - [1113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), - [1115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(555), - [1117] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 4), - [1119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 5), - [1121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [1123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [1125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [1127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_if_statement, 4), - [1129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 3), - [1131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [1133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [1135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [1137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), - [1139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [1141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_init, 1), - [1143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [1145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [1147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [1149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [1151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [1153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), - [1155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [1157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_statement, 3), - [1159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_constant_decl, 5), - [1161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_access_mode, 1), - [1163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), - [1165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), - [1167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), - [1169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(605), - [1171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455), - [1173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), - [1175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 6), - [1177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), - [1179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_statement, 4), - [1181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), - [1183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(462), - [1185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), - [1187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extension_name, 1), - [1189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), - [1191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_statement, 2), - [1193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), - [1195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_assert_statement, 2), - [1197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [1199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), - [1201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [1203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [1205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), - [1207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [1209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), - [1211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [1213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [1215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [1217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [1219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_qualifier, 5), - [1221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), - [1223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), - [1225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(505), - [1227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), - [1229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), - [1231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), - [1233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), - [1235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), - [1237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), - [1239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), - [1241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 7), - [1243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), - [1245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), - [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mat_prefix, 1), - [1249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vec_prefix, 1), - [1251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(522), - [1253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(561), - [1255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage_texture_type, 1), - [1257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562), - [1259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sampled_texture_type, 1), - [1261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [1263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), - [1265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), - [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 2), - [1269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [1271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), - [1273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [1275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), - [1277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), - [1279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), - [1281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [1283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), - [1285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_update, 1), - [1287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [1289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(470), - [1291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), - [1293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [1295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [1297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), - [1299] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [1301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [1303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407), - [1305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 8), - [1307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 3), - [1309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), - [1311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), - [1313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647), - [1315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), - [1317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [1319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), - [1321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [1323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [1325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [1327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [1329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(659), - [1331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), - [1333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [1335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(662), - [1337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(663), - [1339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), - [1341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), - [1343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667), - [1345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668), -}; - -#ifdef __cplusplus -extern "C" { -#endif -void *tree_sitter_wgsl_external_scanner_create(void); -void tree_sitter_wgsl_external_scanner_destroy(void *); -bool tree_sitter_wgsl_external_scanner_scan(void *, TSLexer *, const bool *); -unsigned tree_sitter_wgsl_external_scanner_serialize(void *, char *); -void tree_sitter_wgsl_external_scanner_deserialize(void *, const char *, unsigned); - -#ifdef _WIN32 -#define extern __declspec(dllexport) -#endif - -extern const TSLanguage *tree_sitter_wgsl(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, - .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_ident_pattern_token, - .external_scanner = { - &ts_external_scanner_states[0][0], - ts_external_scanner_symbol_map, - tree_sitter_wgsl_external_scanner_create, - tree_sitter_wgsl_external_scanner_destroy, - tree_sitter_wgsl_external_scanner_scan, - tree_sitter_wgsl_external_scanner_serialize, - tree_sitter_wgsl_external_scanner_deserialize, - }, - .primary_state_ids = ts_primary_state_ids, - }; - return &language; -} -#ifdef __cplusplus -} -#endif diff --git a/src/parser.cpp b/src/parser.cpp new file mode 100644 index 0000000..9f4d973 --- /dev/null +++ b/src/parser.cpp @@ -0,0 +1,31959 @@ +#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 896 +#define LARGE_STATE_COUNT 17 +#define SYMBOL_COUNT 245 +#define ALIAS_COUNT 0 +#define TOKEN_COUNT 115 +#define EXTERNAL_TOKEN_COUNT 13 +#define FIELD_COUNT 0 +#define MAX_ALIAS_SEQUENCE_LENGTH 10 +#define PRODUCTION_ID_COUNT 1 + +enum ts_symbol_identifiers { + sym_ident_pattern_token = 1, + anon_sym_SEMI = 2, + anon_sym_true = 3, + anon_sym_false = 4, + aux_sym_decimal_int_literal_token1 = 5, + aux_sym_decimal_int_literal_token2 = 6, + sym_hex_int_literal = 7, + aux_sym_decimal_float_literal_token1 = 8, + aux_sym_decimal_float_literal_token2 = 9, + aux_sym_decimal_float_literal_token3 = 10, + aux_sym_decimal_float_literal_token4 = 11, + aux_sym_decimal_float_literal_token5 = 12, + aux_sym_hex_float_literal_token1 = 13, + aux_sym_hex_float_literal_token2 = 14, + aux_sym_hex_float_literal_token3 = 15, + anon_sym_diagnostic = 16, + anon_sym_DOT = 17, + anon_sym_COMMA = 18, + anon_sym_AT = 19, + anon_sym_align = 20, + anon_sym_LPAREN = 21, + anon_sym_RPAREN = 22, + anon_sym_binding = 23, + anon_sym_blend_src = 24, + anon_sym_builtin = 25, + anon_sym_const = 26, + anon_sym_group = 27, + anon_sym_id = 28, + anon_sym_interpolate = 29, + anon_sym_invariant = 30, + anon_sym_location = 31, + anon_sym_must_use = 32, + anon_sym_size = 33, + anon_sym_workgroup_size = 34, + anon_sym_vertex = 35, + anon_sym_fragment = 36, + anon_sym_compute = 37, + anon_sym_struct = 38, + anon_sym_LBRACE = 39, + anon_sym_RBRACE = 40, + anon_sym_COLON = 41, + anon_sym_alias = 42, + anon_sym_EQ = 43, + anon_sym_let = 44, + anon_sym_var = 45, + anon_sym_override = 46, + anon_sym_LBRACK = 47, + anon_sym_RBRACK = 48, + anon_sym_DASH = 49, + anon_sym_BANG = 50, + anon_sym_TILDE = 51, + anon_sym_STAR = 52, + anon_sym_AMP = 53, + anon_sym_SLASH = 54, + anon_sym_PERCENT = 55, + anon_sym_PLUS = 56, + anon_sym_EQ_EQ = 57, + anon_sym_BANG_EQ = 58, + anon_sym_AMP_AMP = 59, + anon_sym_PIPE_PIPE = 60, + anon_sym_PIPE = 61, + anon_sym_CARET = 62, + anon_sym__ = 63, + anon_sym_PLUS_EQ = 64, + anon_sym_DASH_EQ = 65, + anon_sym_STAR_EQ = 66, + anon_sym_SLASH_EQ = 67, + anon_sym_PERCENT_EQ = 68, + anon_sym_AMP_EQ = 69, + anon_sym_PIPE_EQ = 70, + anon_sym_CARET_EQ = 71, + anon_sym_PLUS_PLUS = 72, + anon_sym_DASH_DASH = 73, + anon_sym_if = 74, + anon_sym_else = 75, + anon_sym_switch = 76, + anon_sym_case = 77, + anon_sym_default = 78, + anon_sym_loop = 79, + anon_sym_for = 80, + anon_sym_while = 81, + anon_sym_break = 82, + sym_continue_statement = 83, + anon_sym_continuing = 84, + anon_sym_return = 85, + anon_sym_const_assert = 86, + anon_sym_discard = 87, + anon_sym_fn = 88, + anon_sym_DASH_GT = 89, + anon_sym_enable = 90, + anon_sym_requires = 91, + aux_sym_swizzle_name_token1 = 92, + aux_sym_swizzle_name_token2 = 93, + aux_sym_swizzle_name_token3 = 94, + aux_sym_swizzle_name_token4 = 95, + aux_sym_swizzle_name_token5 = 96, + aux_sym_swizzle_name_token6 = 97, + aux_sym_swizzle_name_token7 = 98, + aux_sym_swizzle_name_token8 = 99, + sym__comment = 100, + sym__blankspace = 101, + sym__block_comment = 102, + sym__disambiguate_template = 103, + sym__template_args_start = 104, + sym__template_args_end = 105, + sym__less_than = 106, + sym__less_than_equal = 107, + sym__shift_left = 108, + sym__shift_left_assign = 109, + sym__greater_than = 110, + sym__greater_than_equal = 111, + sym__shift_right = 112, + sym__shift_right_assign = 113, + sym__error_sentinel = 114, + sym_translation_unit = 115, + sym_global_directive = 116, + sym_bool_literal = 117, + sym_int_literal = 118, + sym_decimal_int_literal = 119, + sym_float_literal = 120, + sym_decimal_float_literal = 121, + sym_hex_float_literal = 122, + sym_diagnostic_directive = 123, + sym_literal = 124, + sym_ident = 125, + sym_member_ident = 126, + sym_diagnostic_name_token = 127, + sym_diagnostic_rule_name = 128, + sym_template_list = 129, + sym_template_arg_comma_list = 130, + sym_template_arg_expression = 131, + sym_align_attr = 132, + sym_binding_attr = 133, + sym_blend_src_attr = 134, + sym_builtin_attr = 135, + sym_builtin_value_name = 136, + sym_const_attr = 137, + sym_diagnostic_attr = 138, + sym_group_attr = 139, + sym_id_attr = 140, + sym_interpolate_attr = 141, + sym_interpolate_type_name = 142, + sym_interpolate_sampling_name = 143, + sym_invariant_attr = 144, + sym_location_attr = 145, + sym_must_use_attr = 146, + sym_size_attr = 147, + sym_workgroup_size_attr = 148, + sym_vertex_attr = 149, + sym_fragment_attr = 150, + sym_compute_attr = 151, + sym_attribute = 152, + sym_diagnostic_control = 153, + sym_struct_decl = 154, + sym_struct_body_decl = 155, + sym_struct_member = 156, + sym_type_alias_decl = 157, + sym_type_specifier = 158, + sym_template_elaborated_ident = 159, + sym_variable_or_value_statement = 160, + sym_variable_decl = 161, + sym_optionally_typed_ident = 162, + sym_global_variable_decl = 163, + sym_global_value_decl = 164, + sym_primary_expression = 165, + sym_call_expression = 166, + sym_call_phrase = 167, + sym_paren_expression = 168, + sym_argument_expression_list = 169, + sym_expression_comma_list = 170, + sym_component_or_swizzle_specifier = 171, + sym_unary_expression = 172, + sym_singular_expression = 173, + sym_lhs_expression = 174, + sym_core_lhs_expression = 175, + sym_multiplicative_expression = 176, + sym_multiplicative_operator = 177, + sym_additive_expression = 178, + sym_additive_operator = 179, + sym_shift_expression = 180, + sym_relational_expression = 181, + sym_short_circuit_and_expression = 182, + sym_short_circuit_or_expression = 183, + sym_binary_or_expression = 184, + sym_binary_and_expression = 185, + sym_binary_xor_expression = 186, + sym_bitwise_expression = 187, + sym_expression = 188, + sym_compound_statement = 189, + sym_assignment_statement = 190, + sym_compound_assignment_operator = 191, + sym_increment_statement = 192, + sym_decrement_statement = 193, + sym_if_statement = 194, + sym_if_clause = 195, + sym_else_if_clause = 196, + sym_else_clause = 197, + sym_switch_statement = 198, + sym_switch_body = 199, + sym_switch_clause = 200, + sym_case_clause = 201, + sym_default_alone_clause = 202, + sym_case_selectors = 203, + sym_case_selector = 204, + sym_loop_statement = 205, + sym_for_statement = 206, + sym_for_header = 207, + sym_for_init = 208, + sym_for_update = 209, + sym_while_statement = 210, + sym_break_statement = 211, + sym_break_if_statement = 212, + sym_continuing_statement = 213, + sym_continuing_compound_statement = 214, + sym_return_statement = 215, + sym_func_call_statement = 216, + sym_const_assert_statement = 217, + sym_statement = 218, + sym_variable_updating_statement = 219, + sym_function_decl = 220, + sym_function_header = 221, + sym_param_list = 222, + sym_param = 223, + sym_enable_directive = 224, + sym_enable_extension_list = 225, + sym_requires_directive = 226, + sym_software_extension_list = 227, + sym_enable_extension_name = 228, + sym_software_extension_name = 229, + sym_severity_control_name = 230, + sym_swizzle_name = 231, + aux_sym_translation_unit_repeat1 = 232, + aux_sym_translation_unit_repeat2 = 233, + aux_sym_template_arg_comma_list_repeat1 = 234, + aux_sym_struct_body_decl_repeat1 = 235, + aux_sym_struct_member_repeat1 = 236, + aux_sym_expression_comma_list_repeat1 = 237, + aux_sym_compound_statement_repeat1 = 238, + aux_sym_if_statement_repeat1 = 239, + aux_sym_switch_body_repeat1 = 240, + aux_sym_case_selectors_repeat1 = 241, + aux_sym_param_list_repeat1 = 242, + aux_sym_enable_extension_list_repeat1 = 243, + aux_sym_software_extension_list_repeat1 = 244, +}; + +static const char * const ts_symbol_names[] = { + [ts_builtin_sym_end] = "end", + [sym_ident_pattern_token] = "ident_pattern_token", + [anon_sym_SEMI] = ";", + [anon_sym_true] = "true", + [anon_sym_false] = "false", + [aux_sym_decimal_int_literal_token1] = "decimal_int_literal_token1", + [aux_sym_decimal_int_literal_token2] = "decimal_int_literal_token2", + [sym_hex_int_literal] = "hex_int_literal", + [aux_sym_decimal_float_literal_token1] = "decimal_float_literal_token1", + [aux_sym_decimal_float_literal_token2] = "decimal_float_literal_token2", + [aux_sym_decimal_float_literal_token3] = "decimal_float_literal_token3", + [aux_sym_decimal_float_literal_token4] = "decimal_float_literal_token4", + [aux_sym_decimal_float_literal_token5] = "decimal_float_literal_token5", + [aux_sym_hex_float_literal_token1] = "hex_float_literal_token1", + [aux_sym_hex_float_literal_token2] = "hex_float_literal_token2", + [aux_sym_hex_float_literal_token3] = "hex_float_literal_token3", + [anon_sym_diagnostic] = "diagnostic", + [anon_sym_DOT] = ".", + [anon_sym_COMMA] = ",", + [anon_sym_AT] = "@", + [anon_sym_align] = "align", + [anon_sym_LPAREN] = "(", + [anon_sym_RPAREN] = ")", + [anon_sym_binding] = "binding", + [anon_sym_blend_src] = "blend_src", + [anon_sym_builtin] = "builtin", + [anon_sym_const] = "const", + [anon_sym_group] = "group", + [anon_sym_id] = "id", + [anon_sym_interpolate] = "interpolate", + [anon_sym_invariant] = "invariant", + [anon_sym_location] = "location", + [anon_sym_must_use] = "must_use", + [anon_sym_size] = "size", + [anon_sym_workgroup_size] = "workgroup_size", + [anon_sym_vertex] = "vertex", + [anon_sym_fragment] = "fragment", + [anon_sym_compute] = "compute", + [anon_sym_struct] = "struct", + [anon_sym_LBRACE] = "{", + [anon_sym_RBRACE] = "}", + [anon_sym_COLON] = ":", + [anon_sym_alias] = "alias", + [anon_sym_EQ] = "=", + [anon_sym_let] = "let", + [anon_sym_var] = "var", + [anon_sym_override] = "override", + [anon_sym_LBRACK] = "[", + [anon_sym_RBRACK] = "]", + [anon_sym_DASH] = "-", + [anon_sym_BANG] = "!", + [anon_sym_TILDE] = "~", + [anon_sym_STAR] = "*", + [anon_sym_AMP] = "&", + [anon_sym_SLASH] = "/", + [anon_sym_PERCENT] = "%", + [anon_sym_PLUS] = "+", + [anon_sym_EQ_EQ] = "==", + [anon_sym_BANG_EQ] = "!=", + [anon_sym_AMP_AMP] = "&&", + [anon_sym_PIPE_PIPE] = "||", + [anon_sym_PIPE] = "|", + [anon_sym_CARET] = "^", + [anon_sym__] = "_", + [anon_sym_PLUS_EQ] = "+=", + [anon_sym_DASH_EQ] = "-=", + [anon_sym_STAR_EQ] = "*=", + [anon_sym_SLASH_EQ] = "/=", + [anon_sym_PERCENT_EQ] = "%=", + [anon_sym_AMP_EQ] = "&=", + [anon_sym_PIPE_EQ] = "|=", + [anon_sym_CARET_EQ] = "^=", + [anon_sym_PLUS_PLUS] = "++", + [anon_sym_DASH_DASH] = "--", + [anon_sym_if] = "if", + [anon_sym_else] = "else", + [anon_sym_switch] = "switch", + [anon_sym_case] = "case", + [anon_sym_default] = "default", + [anon_sym_loop] = "loop", + [anon_sym_for] = "for", + [anon_sym_while] = "while", + [anon_sym_break] = "break", + [sym_continue_statement] = "continue_statement", + [anon_sym_continuing] = "continuing", + [anon_sym_return] = "return", + [anon_sym_const_assert] = "const_assert", + [anon_sym_discard] = "discard", + [anon_sym_fn] = "fn", + [anon_sym_DASH_GT] = "->", + [anon_sym_enable] = "enable", + [anon_sym_requires] = "requires", + [aux_sym_swizzle_name_token1] = "swizzle_name_token1", + [aux_sym_swizzle_name_token2] = "swizzle_name_token2", + [aux_sym_swizzle_name_token3] = "swizzle_name_token3", + [aux_sym_swizzle_name_token4] = "swizzle_name_token4", + [aux_sym_swizzle_name_token5] = "swizzle_name_token5", + [aux_sym_swizzle_name_token6] = "swizzle_name_token6", + [aux_sym_swizzle_name_token7] = "swizzle_name_token7", + [aux_sym_swizzle_name_token8] = "swizzle_name_token8", + [sym__comment] = "_comment", + [sym__blankspace] = "_blankspace", + [sym__block_comment] = "_block_comment", + [sym__disambiguate_template] = "_disambiguate_template", + [sym__template_args_start] = "_template_args_start", + [sym__template_args_end] = "_template_args_end", + [sym__less_than] = "_less_than", + [sym__less_than_equal] = "_less_than_equal", + [sym__shift_left] = "_shift_left", + [sym__shift_left_assign] = "_shift_left_assign", + [sym__greater_than] = "_greater_than", + [sym__greater_than_equal] = "_greater_than_equal", + [sym__shift_right] = "_shift_right", + [sym__shift_right_assign] = "_shift_right_assign", + [sym__error_sentinel] = "_error_sentinel", + [sym_translation_unit] = "translation_unit", + [sym_global_directive] = "global_directive", + [sym_bool_literal] = "bool_literal", + [sym_int_literal] = "int_literal", + [sym_decimal_int_literal] = "decimal_int_literal", + [sym_float_literal] = "float_literal", + [sym_decimal_float_literal] = "decimal_float_literal", + [sym_hex_float_literal] = "hex_float_literal", + [sym_diagnostic_directive] = "diagnostic_directive", + [sym_literal] = "literal", + [sym_ident] = "ident", + [sym_member_ident] = "member_ident", + [sym_diagnostic_name_token] = "diagnostic_name_token", + [sym_diagnostic_rule_name] = "diagnostic_rule_name", + [sym_template_list] = "template_list", + [sym_template_arg_comma_list] = "template_arg_comma_list", + [sym_template_arg_expression] = "template_arg_expression", + [sym_align_attr] = "align_attr", + [sym_binding_attr] = "binding_attr", + [sym_blend_src_attr] = "blend_src_attr", + [sym_builtin_attr] = "builtin_attr", + [sym_builtin_value_name] = "builtin_value_name", + [sym_const_attr] = "const_attr", + [sym_diagnostic_attr] = "diagnostic_attr", + [sym_group_attr] = "group_attr", + [sym_id_attr] = "id_attr", + [sym_interpolate_attr] = "interpolate_attr", + [sym_interpolate_type_name] = "interpolate_type_name", + [sym_interpolate_sampling_name] = "interpolate_sampling_name", + [sym_invariant_attr] = "invariant_attr", + [sym_location_attr] = "location_attr", + [sym_must_use_attr] = "must_use_attr", + [sym_size_attr] = "size_attr", + [sym_workgroup_size_attr] = "workgroup_size_attr", + [sym_vertex_attr] = "vertex_attr", + [sym_fragment_attr] = "fragment_attr", + [sym_compute_attr] = "compute_attr", + [sym_attribute] = "attribute", + [sym_diagnostic_control] = "diagnostic_control", + [sym_struct_decl] = "struct_decl", + [sym_struct_body_decl] = "struct_body_decl", + [sym_struct_member] = "struct_member", + [sym_type_alias_decl] = "type_alias_decl", + [sym_type_specifier] = "type_specifier", + [sym_template_elaborated_ident] = "template_elaborated_ident", + [sym_variable_or_value_statement] = "variable_or_value_statement", + [sym_variable_decl] = "variable_decl", + [sym_optionally_typed_ident] = "optionally_typed_ident", + [sym_global_variable_decl] = "global_variable_decl", + [sym_global_value_decl] = "global_value_decl", + [sym_primary_expression] = "primary_expression", + [sym_call_expression] = "call_expression", + [sym_call_phrase] = "call_phrase", + [sym_paren_expression] = "paren_expression", + [sym_argument_expression_list] = "argument_expression_list", + [sym_expression_comma_list] = "expression_comma_list", + [sym_component_or_swizzle_specifier] = "component_or_swizzle_specifier", + [sym_unary_expression] = "unary_expression", + [sym_singular_expression] = "singular_expression", + [sym_lhs_expression] = "lhs_expression", + [sym_core_lhs_expression] = "core_lhs_expression", + [sym_multiplicative_expression] = "multiplicative_expression", + [sym_multiplicative_operator] = "multiplicative_operator", + [sym_additive_expression] = "additive_expression", + [sym_additive_operator] = "additive_operator", + [sym_shift_expression] = "shift_expression", + [sym_relational_expression] = "relational_expression", + [sym_short_circuit_and_expression] = "short_circuit_and_expression", + [sym_short_circuit_or_expression] = "short_circuit_or_expression", + [sym_binary_or_expression] = "binary_or_expression", + [sym_binary_and_expression] = "binary_and_expression", + [sym_binary_xor_expression] = "binary_xor_expression", + [sym_bitwise_expression] = "bitwise_expression", + [sym_expression] = "expression", + [sym_compound_statement] = "compound_statement", + [sym_assignment_statement] = "assignment_statement", + [sym_compound_assignment_operator] = "compound_assignment_operator", + [sym_increment_statement] = "increment_statement", + [sym_decrement_statement] = "decrement_statement", + [sym_if_statement] = "if_statement", + [sym_if_clause] = "if_clause", + [sym_else_if_clause] = "else_if_clause", + [sym_else_clause] = "else_clause", + [sym_switch_statement] = "switch_statement", + [sym_switch_body] = "switch_body", + [sym_switch_clause] = "switch_clause", + [sym_case_clause] = "case_clause", + [sym_default_alone_clause] = "default_alone_clause", + [sym_case_selectors] = "case_selectors", + [sym_case_selector] = "case_selector", + [sym_loop_statement] = "loop_statement", + [sym_for_statement] = "for_statement", + [sym_for_header] = "for_header", + [sym_for_init] = "for_init", + [sym_for_update] = "for_update", + [sym_while_statement] = "while_statement", + [sym_break_statement] = "break_statement", + [sym_break_if_statement] = "break_if_statement", + [sym_continuing_statement] = "continuing_statement", + [sym_continuing_compound_statement] = "continuing_compound_statement", + [sym_return_statement] = "return_statement", + [sym_func_call_statement] = "func_call_statement", + [sym_const_assert_statement] = "const_assert_statement", + [sym_statement] = "statement", + [sym_variable_updating_statement] = "variable_updating_statement", + [sym_function_decl] = "function_decl", + [sym_function_header] = "function_header", + [sym_param_list] = "param_list", + [sym_param] = "param", + [sym_enable_directive] = "enable_directive", + [sym_enable_extension_list] = "enable_extension_list", + [sym_requires_directive] = "requires_directive", + [sym_software_extension_list] = "software_extension_list", + [sym_enable_extension_name] = "enable_extension_name", + [sym_software_extension_name] = "software_extension_name", + [sym_severity_control_name] = "severity_control_name", + [sym_swizzle_name] = "swizzle_name", + [aux_sym_translation_unit_repeat1] = "translation_unit_repeat1", + [aux_sym_translation_unit_repeat2] = "translation_unit_repeat2", + [aux_sym_template_arg_comma_list_repeat1] = "template_arg_comma_list_repeat1", + [aux_sym_struct_body_decl_repeat1] = "struct_body_decl_repeat1", + [aux_sym_struct_member_repeat1] = "struct_member_repeat1", + [aux_sym_expression_comma_list_repeat1] = "expression_comma_list_repeat1", + [aux_sym_compound_statement_repeat1] = "compound_statement_repeat1", + [aux_sym_if_statement_repeat1] = "if_statement_repeat1", + [aux_sym_switch_body_repeat1] = "switch_body_repeat1", + [aux_sym_case_selectors_repeat1] = "case_selectors_repeat1", + [aux_sym_param_list_repeat1] = "param_list_repeat1", + [aux_sym_enable_extension_list_repeat1] = "enable_extension_list_repeat1", + [aux_sym_software_extension_list_repeat1] = "software_extension_list_repeat1", +}; + +static const TSSymbol ts_symbol_map[] = { + [ts_builtin_sym_end] = ts_builtin_sym_end, + [sym_ident_pattern_token] = sym_ident_pattern_token, + [anon_sym_SEMI] = anon_sym_SEMI, + [anon_sym_true] = anon_sym_true, + [anon_sym_false] = anon_sym_false, + [aux_sym_decimal_int_literal_token1] = aux_sym_decimal_int_literal_token1, + [aux_sym_decimal_int_literal_token2] = aux_sym_decimal_int_literal_token2, + [sym_hex_int_literal] = sym_hex_int_literal, + [aux_sym_decimal_float_literal_token1] = aux_sym_decimal_float_literal_token1, + [aux_sym_decimal_float_literal_token2] = aux_sym_decimal_float_literal_token2, + [aux_sym_decimal_float_literal_token3] = aux_sym_decimal_float_literal_token3, + [aux_sym_decimal_float_literal_token4] = aux_sym_decimal_float_literal_token4, + [aux_sym_decimal_float_literal_token5] = aux_sym_decimal_float_literal_token5, + [aux_sym_hex_float_literal_token1] = aux_sym_hex_float_literal_token1, + [aux_sym_hex_float_literal_token2] = aux_sym_hex_float_literal_token2, + [aux_sym_hex_float_literal_token3] = aux_sym_hex_float_literal_token3, + [anon_sym_diagnostic] = anon_sym_diagnostic, + [anon_sym_DOT] = anon_sym_DOT, + [anon_sym_COMMA] = anon_sym_COMMA, + [anon_sym_AT] = anon_sym_AT, + [anon_sym_align] = anon_sym_align, + [anon_sym_LPAREN] = anon_sym_LPAREN, + [anon_sym_RPAREN] = anon_sym_RPAREN, + [anon_sym_binding] = anon_sym_binding, + [anon_sym_blend_src] = anon_sym_blend_src, + [anon_sym_builtin] = anon_sym_builtin, + [anon_sym_const] = anon_sym_const, + [anon_sym_group] = anon_sym_group, + [anon_sym_id] = anon_sym_id, + [anon_sym_interpolate] = anon_sym_interpolate, + [anon_sym_invariant] = anon_sym_invariant, + [anon_sym_location] = anon_sym_location, + [anon_sym_must_use] = anon_sym_must_use, + [anon_sym_size] = anon_sym_size, + [anon_sym_workgroup_size] = anon_sym_workgroup_size, + [anon_sym_vertex] = anon_sym_vertex, + [anon_sym_fragment] = anon_sym_fragment, + [anon_sym_compute] = anon_sym_compute, + [anon_sym_struct] = anon_sym_struct, + [anon_sym_LBRACE] = anon_sym_LBRACE, + [anon_sym_RBRACE] = anon_sym_RBRACE, + [anon_sym_COLON] = anon_sym_COLON, + [anon_sym_alias] = anon_sym_alias, + [anon_sym_EQ] = anon_sym_EQ, + [anon_sym_let] = anon_sym_let, + [anon_sym_var] = anon_sym_var, + [anon_sym_override] = anon_sym_override, + [anon_sym_LBRACK] = anon_sym_LBRACK, + [anon_sym_RBRACK] = anon_sym_RBRACK, + [anon_sym_DASH] = anon_sym_DASH, + [anon_sym_BANG] = anon_sym_BANG, + [anon_sym_TILDE] = anon_sym_TILDE, + [anon_sym_STAR] = anon_sym_STAR, + [anon_sym_AMP] = anon_sym_AMP, + [anon_sym_SLASH] = anon_sym_SLASH, + [anon_sym_PERCENT] = anon_sym_PERCENT, + [anon_sym_PLUS] = anon_sym_PLUS, + [anon_sym_EQ_EQ] = anon_sym_EQ_EQ, + [anon_sym_BANG_EQ] = anon_sym_BANG_EQ, + [anon_sym_AMP_AMP] = anon_sym_AMP_AMP, + [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, + [anon_sym_PIPE] = anon_sym_PIPE, + [anon_sym_CARET] = anon_sym_CARET, + [anon_sym__] = anon_sym__, + [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, + [anon_sym_DASH_EQ] = anon_sym_DASH_EQ, + [anon_sym_STAR_EQ] = anon_sym_STAR_EQ, + [anon_sym_SLASH_EQ] = anon_sym_SLASH_EQ, + [anon_sym_PERCENT_EQ] = anon_sym_PERCENT_EQ, + [anon_sym_AMP_EQ] = anon_sym_AMP_EQ, + [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ, + [anon_sym_CARET_EQ] = anon_sym_CARET_EQ, + [anon_sym_PLUS_PLUS] = anon_sym_PLUS_PLUS, + [anon_sym_DASH_DASH] = anon_sym_DASH_DASH, + [anon_sym_if] = anon_sym_if, + [anon_sym_else] = anon_sym_else, + [anon_sym_switch] = anon_sym_switch, + [anon_sym_case] = anon_sym_case, + [anon_sym_default] = anon_sym_default, + [anon_sym_loop] = anon_sym_loop, + [anon_sym_for] = anon_sym_for, + [anon_sym_while] = anon_sym_while, + [anon_sym_break] = anon_sym_break, + [sym_continue_statement] = sym_continue_statement, + [anon_sym_continuing] = anon_sym_continuing, + [anon_sym_return] = anon_sym_return, + [anon_sym_const_assert] = anon_sym_const_assert, + [anon_sym_discard] = anon_sym_discard, + [anon_sym_fn] = anon_sym_fn, + [anon_sym_DASH_GT] = anon_sym_DASH_GT, + [anon_sym_enable] = anon_sym_enable, + [anon_sym_requires] = anon_sym_requires, + [aux_sym_swizzle_name_token1] = aux_sym_swizzle_name_token1, + [aux_sym_swizzle_name_token2] = aux_sym_swizzle_name_token2, + [aux_sym_swizzle_name_token3] = aux_sym_swizzle_name_token3, + [aux_sym_swizzle_name_token4] = aux_sym_swizzle_name_token4, + [aux_sym_swizzle_name_token5] = aux_sym_swizzle_name_token5, + [aux_sym_swizzle_name_token6] = aux_sym_swizzle_name_token6, + [aux_sym_swizzle_name_token7] = aux_sym_swizzle_name_token7, + [aux_sym_swizzle_name_token8] = aux_sym_swizzle_name_token8, + [sym__comment] = sym__comment, + [sym__blankspace] = sym__blankspace, + [sym__block_comment] = sym__block_comment, + [sym__disambiguate_template] = sym__disambiguate_template, + [sym__template_args_start] = sym__template_args_start, + [sym__template_args_end] = sym__template_args_end, + [sym__less_than] = sym__less_than, + [sym__less_than_equal] = sym__less_than_equal, + [sym__shift_left] = sym__shift_left, + [sym__shift_left_assign] = sym__shift_left_assign, + [sym__greater_than] = sym__greater_than, + [sym__greater_than_equal] = sym__greater_than_equal, + [sym__shift_right] = sym__shift_right, + [sym__shift_right_assign] = sym__shift_right_assign, + [sym__error_sentinel] = sym__error_sentinel, + [sym_translation_unit] = sym_translation_unit, + [sym_global_directive] = sym_global_directive, + [sym_bool_literal] = sym_bool_literal, + [sym_int_literal] = sym_int_literal, + [sym_decimal_int_literal] = sym_decimal_int_literal, + [sym_float_literal] = sym_float_literal, + [sym_decimal_float_literal] = sym_decimal_float_literal, + [sym_hex_float_literal] = sym_hex_float_literal, + [sym_diagnostic_directive] = sym_diagnostic_directive, + [sym_literal] = sym_literal, + [sym_ident] = sym_ident, + [sym_member_ident] = sym_member_ident, + [sym_diagnostic_name_token] = sym_diagnostic_name_token, + [sym_diagnostic_rule_name] = sym_diagnostic_rule_name, + [sym_template_list] = sym_template_list, + [sym_template_arg_comma_list] = sym_template_arg_comma_list, + [sym_template_arg_expression] = sym_template_arg_expression, + [sym_align_attr] = sym_align_attr, + [sym_binding_attr] = sym_binding_attr, + [sym_blend_src_attr] = sym_blend_src_attr, + [sym_builtin_attr] = sym_builtin_attr, + [sym_builtin_value_name] = sym_builtin_value_name, + [sym_const_attr] = sym_const_attr, + [sym_diagnostic_attr] = sym_diagnostic_attr, + [sym_group_attr] = sym_group_attr, + [sym_id_attr] = sym_id_attr, + [sym_interpolate_attr] = sym_interpolate_attr, + [sym_interpolate_type_name] = sym_interpolate_type_name, + [sym_interpolate_sampling_name] = sym_interpolate_sampling_name, + [sym_invariant_attr] = sym_invariant_attr, + [sym_location_attr] = sym_location_attr, + [sym_must_use_attr] = sym_must_use_attr, + [sym_size_attr] = sym_size_attr, + [sym_workgroup_size_attr] = sym_workgroup_size_attr, + [sym_vertex_attr] = sym_vertex_attr, + [sym_fragment_attr] = sym_fragment_attr, + [sym_compute_attr] = sym_compute_attr, + [sym_attribute] = sym_attribute, + [sym_diagnostic_control] = sym_diagnostic_control, + [sym_struct_decl] = sym_struct_decl, + [sym_struct_body_decl] = sym_struct_body_decl, + [sym_struct_member] = sym_struct_member, + [sym_type_alias_decl] = sym_type_alias_decl, + [sym_type_specifier] = sym_type_specifier, + [sym_template_elaborated_ident] = sym_template_elaborated_ident, + [sym_variable_or_value_statement] = sym_variable_or_value_statement, + [sym_variable_decl] = sym_variable_decl, + [sym_optionally_typed_ident] = sym_optionally_typed_ident, + [sym_global_variable_decl] = sym_global_variable_decl, + [sym_global_value_decl] = sym_global_value_decl, + [sym_primary_expression] = sym_primary_expression, + [sym_call_expression] = sym_call_expression, + [sym_call_phrase] = sym_call_phrase, + [sym_paren_expression] = sym_paren_expression, + [sym_argument_expression_list] = sym_argument_expression_list, + [sym_expression_comma_list] = sym_expression_comma_list, + [sym_component_or_swizzle_specifier] = sym_component_or_swizzle_specifier, + [sym_unary_expression] = sym_unary_expression, + [sym_singular_expression] = sym_singular_expression, + [sym_lhs_expression] = sym_lhs_expression, + [sym_core_lhs_expression] = sym_core_lhs_expression, + [sym_multiplicative_expression] = sym_multiplicative_expression, + [sym_multiplicative_operator] = sym_multiplicative_operator, + [sym_additive_expression] = sym_additive_expression, + [sym_additive_operator] = sym_additive_operator, + [sym_shift_expression] = sym_shift_expression, + [sym_relational_expression] = sym_relational_expression, + [sym_short_circuit_and_expression] = sym_short_circuit_and_expression, + [sym_short_circuit_or_expression] = sym_short_circuit_or_expression, + [sym_binary_or_expression] = sym_binary_or_expression, + [sym_binary_and_expression] = sym_binary_and_expression, + [sym_binary_xor_expression] = sym_binary_xor_expression, + [sym_bitwise_expression] = sym_bitwise_expression, + [sym_expression] = sym_expression, + [sym_compound_statement] = sym_compound_statement, + [sym_assignment_statement] = sym_assignment_statement, + [sym_compound_assignment_operator] = sym_compound_assignment_operator, + [sym_increment_statement] = sym_increment_statement, + [sym_decrement_statement] = sym_decrement_statement, + [sym_if_statement] = sym_if_statement, + [sym_if_clause] = sym_if_clause, + [sym_else_if_clause] = sym_else_if_clause, + [sym_else_clause] = sym_else_clause, + [sym_switch_statement] = sym_switch_statement, + [sym_switch_body] = sym_switch_body, + [sym_switch_clause] = sym_switch_clause, + [sym_case_clause] = sym_case_clause, + [sym_default_alone_clause] = sym_default_alone_clause, + [sym_case_selectors] = sym_case_selectors, + [sym_case_selector] = sym_case_selector, + [sym_loop_statement] = sym_loop_statement, + [sym_for_statement] = sym_for_statement, + [sym_for_header] = sym_for_header, + [sym_for_init] = sym_for_init, + [sym_for_update] = sym_for_update, + [sym_while_statement] = sym_while_statement, + [sym_break_statement] = sym_break_statement, + [sym_break_if_statement] = sym_break_if_statement, + [sym_continuing_statement] = sym_continuing_statement, + [sym_continuing_compound_statement] = sym_continuing_compound_statement, + [sym_return_statement] = sym_return_statement, + [sym_func_call_statement] = sym_func_call_statement, + [sym_const_assert_statement] = sym_const_assert_statement, + [sym_statement] = sym_statement, + [sym_variable_updating_statement] = sym_variable_updating_statement, + [sym_function_decl] = sym_function_decl, + [sym_function_header] = sym_function_header, + [sym_param_list] = sym_param_list, + [sym_param] = sym_param, + [sym_enable_directive] = sym_enable_directive, + [sym_enable_extension_list] = sym_enable_extension_list, + [sym_requires_directive] = sym_requires_directive, + [sym_software_extension_list] = sym_software_extension_list, + [sym_enable_extension_name] = sym_enable_extension_name, + [sym_software_extension_name] = sym_software_extension_name, + [sym_severity_control_name] = sym_severity_control_name, + [sym_swizzle_name] = sym_swizzle_name, + [aux_sym_translation_unit_repeat1] = aux_sym_translation_unit_repeat1, + [aux_sym_translation_unit_repeat2] = aux_sym_translation_unit_repeat2, + [aux_sym_template_arg_comma_list_repeat1] = aux_sym_template_arg_comma_list_repeat1, + [aux_sym_struct_body_decl_repeat1] = aux_sym_struct_body_decl_repeat1, + [aux_sym_struct_member_repeat1] = aux_sym_struct_member_repeat1, + [aux_sym_expression_comma_list_repeat1] = aux_sym_expression_comma_list_repeat1, + [aux_sym_compound_statement_repeat1] = aux_sym_compound_statement_repeat1, + [aux_sym_if_statement_repeat1] = aux_sym_if_statement_repeat1, + [aux_sym_switch_body_repeat1] = aux_sym_switch_body_repeat1, + [aux_sym_case_selectors_repeat1] = aux_sym_case_selectors_repeat1, + [aux_sym_param_list_repeat1] = aux_sym_param_list_repeat1, + [aux_sym_enable_extension_list_repeat1] = aux_sym_enable_extension_list_repeat1, + [aux_sym_software_extension_list_repeat1] = aux_sym_software_extension_list_repeat1, +}; + +static const TSSymbolMetadata ts_symbol_metadata[] = { + [ts_builtin_sym_end] = { + .visible = false, + .named = true, + }, + [sym_ident_pattern_token] = { + .visible = true, + .named = true, + }, + [anon_sym_SEMI] = { + .visible = true, + .named = false, + }, + [anon_sym_true] = { + .visible = true, + .named = false, + }, + [anon_sym_false] = { + .visible = true, + .named = false, + }, + [aux_sym_decimal_int_literal_token1] = { + .visible = false, + .named = false, + }, + [aux_sym_decimal_int_literal_token2] = { + .visible = false, + .named = false, + }, + [sym_hex_int_literal] = { + .visible = true, + .named = true, + }, + [aux_sym_decimal_float_literal_token1] = { + .visible = false, + .named = false, + }, + [aux_sym_decimal_float_literal_token2] = { + .visible = false, + .named = false, + }, + [aux_sym_decimal_float_literal_token3] = { + .visible = false, + .named = false, + }, + [aux_sym_decimal_float_literal_token4] = { + .visible = false, + .named = false, + }, + [aux_sym_decimal_float_literal_token5] = { + .visible = false, + .named = false, + }, + [aux_sym_hex_float_literal_token1] = { + .visible = false, + .named = false, + }, + [aux_sym_hex_float_literal_token2] = { + .visible = false, + .named = false, + }, + [aux_sym_hex_float_literal_token3] = { + .visible = false, + .named = false, + }, + [anon_sym_diagnostic] = { + .visible = true, + .named = false, + }, + [anon_sym_DOT] = { + .visible = true, + .named = false, + }, + [anon_sym_COMMA] = { + .visible = true, + .named = false, + }, + [anon_sym_AT] = { + .visible = true, + .named = false, + }, + [anon_sym_align] = { + .visible = true, + .named = false, + }, + [anon_sym_LPAREN] = { + .visible = true, + .named = false, + }, + [anon_sym_RPAREN] = { + .visible = true, + .named = false, + }, + [anon_sym_binding] = { + .visible = true, + .named = false, + }, + [anon_sym_blend_src] = { + .visible = true, + .named = false, + }, + [anon_sym_builtin] = { + .visible = true, + .named = false, + }, + [anon_sym_const] = { + .visible = true, + .named = false, + }, + [anon_sym_group] = { + .visible = true, + .named = false, + }, + [anon_sym_id] = { + .visible = true, + .named = false, + }, + [anon_sym_interpolate] = { + .visible = true, + .named = false, + }, + [anon_sym_invariant] = { + .visible = true, + .named = false, + }, + [anon_sym_location] = { + .visible = true, + .named = false, + }, + [anon_sym_must_use] = { + .visible = true, + .named = false, + }, + [anon_sym_size] = { + .visible = true, + .named = false, + }, + [anon_sym_workgroup_size] = { + .visible = true, + .named = false, + }, + [anon_sym_vertex] = { + .visible = true, + .named = false, + }, + [anon_sym_fragment] = { + .visible = true, + .named = false, + }, + [anon_sym_compute] = { + .visible = true, + .named = false, + }, + [anon_sym_struct] = { + .visible = true, + .named = false, + }, + [anon_sym_LBRACE] = { + .visible = true, + .named = false, + }, + [anon_sym_RBRACE] = { + .visible = true, + .named = false, + }, + [anon_sym_COLON] = { + .visible = true, + .named = false, + }, + [anon_sym_alias] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_let] = { + .visible = true, + .named = false, + }, + [anon_sym_var] = { + .visible = true, + .named = false, + }, + [anon_sym_override] = { + .visible = true, + .named = false, + }, + [anon_sym_LBRACK] = { + .visible = true, + .named = false, + }, + [anon_sym_RBRACK] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH] = { + .visible = true, + .named = false, + }, + [anon_sym_BANG] = { + .visible = true, + .named = false, + }, + [anon_sym_TILDE] = { + .visible = true, + .named = false, + }, + [anon_sym_STAR] = { + .visible = true, + .named = false, + }, + [anon_sym_AMP] = { + .visible = true, + .named = false, + }, + [anon_sym_SLASH] = { + .visible = true, + .named = false, + }, + [anon_sym_PERCENT] = { + .visible = true, + .named = false, + }, + [anon_sym_PLUS] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_BANG_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_AMP_AMP] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE_PIPE] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE] = { + .visible = true, + .named = false, + }, + [anon_sym_CARET] = { + .visible = true, + .named = false, + }, + [anon_sym__] = { + .visible = true, + .named = false, + }, + [anon_sym_PLUS_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_STAR_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_SLASH_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_PERCENT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_AMP_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_CARET_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_PLUS_PLUS] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH_DASH] = { + .visible = true, + .named = false, + }, + [anon_sym_if] = { + .visible = true, + .named = false, + }, + [anon_sym_else] = { + .visible = true, + .named = false, + }, + [anon_sym_switch] = { + .visible = true, + .named = false, + }, + [anon_sym_case] = { + .visible = true, + .named = false, + }, + [anon_sym_default] = { + .visible = true, + .named = false, + }, + [anon_sym_loop] = { + .visible = true, + .named = false, + }, + [anon_sym_for] = { + .visible = true, + .named = false, + }, + [anon_sym_while] = { + .visible = true, + .named = false, + }, + [anon_sym_break] = { + .visible = true, + .named = false, + }, + [sym_continue_statement] = { + .visible = true, + .named = true, + }, + [anon_sym_continuing] = { + .visible = true, + .named = false, + }, + [anon_sym_return] = { + .visible = true, + .named = false, + }, + [anon_sym_const_assert] = { + .visible = true, + .named = false, + }, + [anon_sym_discard] = { + .visible = true, + .named = false, + }, + [anon_sym_fn] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH_GT] = { + .visible = true, + .named = false, + }, + [anon_sym_enable] = { + .visible = true, + .named = false, + }, + [anon_sym_requires] = { + .visible = true, + .named = false, + }, + [aux_sym_swizzle_name_token1] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token2] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token3] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token4] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token5] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token6] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token7] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token8] = { + .visible = false, + .named = false, + }, + [sym__comment] = { + .visible = false, + .named = true, + }, + [sym__blankspace] = { + .visible = false, + .named = true, + }, + [sym__block_comment] = { + .visible = false, + .named = true, + }, + [sym__disambiguate_template] = { + .visible = false, + .named = true, + }, + [sym__template_args_start] = { + .visible = false, + .named = true, + }, + [sym__template_args_end] = { + .visible = false, + .named = true, + }, + [sym__less_than] = { + .visible = false, + .named = true, + }, + [sym__less_than_equal] = { + .visible = false, + .named = true, + }, + [sym__shift_left] = { + .visible = false, + .named = true, + }, + [sym__shift_left_assign] = { + .visible = false, + .named = true, + }, + [sym__greater_than] = { + .visible = false, + .named = true, + }, + [sym__greater_than_equal] = { + .visible = false, + .named = true, + }, + [sym__shift_right] = { + .visible = false, + .named = true, + }, + [sym__shift_right_assign] = { + .visible = false, + .named = true, + }, + [sym__error_sentinel] = { + .visible = false, + .named = true, + }, + [sym_translation_unit] = { + .visible = true, + .named = true, + }, + [sym_global_directive] = { + .visible = true, + .named = true, + }, + [sym_bool_literal] = { + .visible = true, + .named = true, + }, + [sym_int_literal] = { + .visible = true, + .named = true, + }, + [sym_decimal_int_literal] = { + .visible = true, + .named = true, + }, + [sym_float_literal] = { + .visible = true, + .named = true, + }, + [sym_decimal_float_literal] = { + .visible = true, + .named = true, + }, + [sym_hex_float_literal] = { + .visible = true, + .named = true, + }, + [sym_diagnostic_directive] = { + .visible = true, + .named = true, + }, + [sym_literal] = { + .visible = true, + .named = true, + }, + [sym_ident] = { + .visible = true, + .named = true, + }, + [sym_member_ident] = { + .visible = true, + .named = true, + }, + [sym_diagnostic_name_token] = { + .visible = true, + .named = true, + }, + [sym_diagnostic_rule_name] = { + .visible = true, + .named = true, + }, + [sym_template_list] = { + .visible = true, + .named = true, + }, + [sym_template_arg_comma_list] = { + .visible = true, + .named = true, + }, + [sym_template_arg_expression] = { + .visible = true, + .named = true, + }, + [sym_align_attr] = { + .visible = true, + .named = true, + }, + [sym_binding_attr] = { + .visible = true, + .named = true, + }, + [sym_blend_src_attr] = { + .visible = true, + .named = true, + }, + [sym_builtin_attr] = { + .visible = true, + .named = true, + }, + [sym_builtin_value_name] = { + .visible = true, + .named = true, + }, + [sym_const_attr] = { + .visible = true, + .named = true, + }, + [sym_diagnostic_attr] = { + .visible = true, + .named = true, + }, + [sym_group_attr] = { + .visible = true, + .named = true, + }, + [sym_id_attr] = { + .visible = true, + .named = true, + }, + [sym_interpolate_attr] = { + .visible = true, + .named = true, + }, + [sym_interpolate_type_name] = { + .visible = true, + .named = true, + }, + [sym_interpolate_sampling_name] = { + .visible = true, + .named = true, + }, + [sym_invariant_attr] = { + .visible = true, + .named = true, + }, + [sym_location_attr] = { + .visible = true, + .named = true, + }, + [sym_must_use_attr] = { + .visible = true, + .named = true, + }, + [sym_size_attr] = { + .visible = true, + .named = true, + }, + [sym_workgroup_size_attr] = { + .visible = true, + .named = true, + }, + [sym_vertex_attr] = { + .visible = true, + .named = true, + }, + [sym_fragment_attr] = { + .visible = true, + .named = true, + }, + [sym_compute_attr] = { + .visible = true, + .named = true, + }, + [sym_attribute] = { + .visible = true, + .named = true, + }, + [sym_diagnostic_control] = { + .visible = true, + .named = true, + }, + [sym_struct_decl] = { + .visible = true, + .named = true, + }, + [sym_struct_body_decl] = { + .visible = true, + .named = true, + }, + [sym_struct_member] = { + .visible = true, + .named = true, + }, + [sym_type_alias_decl] = { + .visible = true, + .named = true, + }, + [sym_type_specifier] = { + .visible = true, + .named = true, + }, + [sym_template_elaborated_ident] = { + .visible = true, + .named = true, + }, + [sym_variable_or_value_statement] = { + .visible = true, + .named = true, + }, + [sym_variable_decl] = { + .visible = true, + .named = true, + }, + [sym_optionally_typed_ident] = { + .visible = true, + .named = true, + }, + [sym_global_variable_decl] = { + .visible = true, + .named = true, + }, + [sym_global_value_decl] = { + .visible = true, + .named = true, + }, + [sym_primary_expression] = { + .visible = true, + .named = true, + }, + [sym_call_expression] = { + .visible = true, + .named = true, + }, + [sym_call_phrase] = { + .visible = true, + .named = true, + }, + [sym_paren_expression] = { + .visible = true, + .named = true, + }, + [sym_argument_expression_list] = { + .visible = true, + .named = true, + }, + [sym_expression_comma_list] = { + .visible = true, + .named = true, + }, + [sym_component_or_swizzle_specifier] = { + .visible = true, + .named = true, + }, + [sym_unary_expression] = { + .visible = true, + .named = true, + }, + [sym_singular_expression] = { + .visible = true, + .named = true, + }, + [sym_lhs_expression] = { + .visible = true, + .named = true, + }, + [sym_core_lhs_expression] = { + .visible = true, + .named = true, + }, + [sym_multiplicative_expression] = { + .visible = true, + .named = true, + }, + [sym_multiplicative_operator] = { + .visible = true, + .named = true, + }, + [sym_additive_expression] = { + .visible = true, + .named = true, + }, + [sym_additive_operator] = { + .visible = true, + .named = true, + }, + [sym_shift_expression] = { + .visible = true, + .named = true, + }, + [sym_relational_expression] = { + .visible = true, + .named = true, + }, + [sym_short_circuit_and_expression] = { + .visible = true, + .named = true, + }, + [sym_short_circuit_or_expression] = { + .visible = true, + .named = true, + }, + [sym_binary_or_expression] = { + .visible = true, + .named = true, + }, + [sym_binary_and_expression] = { + .visible = true, + .named = true, + }, + [sym_binary_xor_expression] = { + .visible = true, + .named = true, + }, + [sym_bitwise_expression] = { + .visible = true, + .named = true, + }, + [sym_expression] = { + .visible = true, + .named = true, + }, + [sym_compound_statement] = { + .visible = true, + .named = true, + }, + [sym_assignment_statement] = { + .visible = true, + .named = true, + }, + [sym_compound_assignment_operator] = { + .visible = true, + .named = true, + }, + [sym_increment_statement] = { + .visible = true, + .named = true, + }, + [sym_decrement_statement] = { + .visible = true, + .named = true, + }, + [sym_if_statement] = { + .visible = true, + .named = true, + }, + [sym_if_clause] = { + .visible = true, + .named = true, + }, + [sym_else_if_clause] = { + .visible = true, + .named = true, + }, + [sym_else_clause] = { + .visible = true, + .named = true, + }, + [sym_switch_statement] = { + .visible = true, + .named = true, + }, + [sym_switch_body] = { + .visible = true, + .named = true, + }, + [sym_switch_clause] = { + .visible = true, + .named = true, + }, + [sym_case_clause] = { + .visible = true, + .named = true, + }, + [sym_default_alone_clause] = { + .visible = true, + .named = true, + }, + [sym_case_selectors] = { + .visible = true, + .named = true, + }, + [sym_case_selector] = { + .visible = true, + .named = true, + }, + [sym_loop_statement] = { + .visible = true, + .named = true, + }, + [sym_for_statement] = { + .visible = true, + .named = true, + }, + [sym_for_header] = { + .visible = true, + .named = true, + }, + [sym_for_init] = { + .visible = true, + .named = true, + }, + [sym_for_update] = { + .visible = true, + .named = true, + }, + [sym_while_statement] = { + .visible = true, + .named = true, + }, + [sym_break_statement] = { + .visible = true, + .named = true, + }, + [sym_break_if_statement] = { + .visible = true, + .named = true, + }, + [sym_continuing_statement] = { + .visible = true, + .named = true, + }, + [sym_continuing_compound_statement] = { + .visible = true, + .named = true, + }, + [sym_return_statement] = { + .visible = true, + .named = true, + }, + [sym_func_call_statement] = { + .visible = true, + .named = true, + }, + [sym_const_assert_statement] = { + .visible = true, + .named = true, + }, + [sym_statement] = { + .visible = true, + .named = true, + }, + [sym_variable_updating_statement] = { + .visible = true, + .named = true, + }, + [sym_function_decl] = { + .visible = true, + .named = true, + }, + [sym_function_header] = { + .visible = true, + .named = true, + }, + [sym_param_list] = { + .visible = true, + .named = true, + }, + [sym_param] = { + .visible = true, + .named = true, + }, + [sym_enable_directive] = { + .visible = true, + .named = true, + }, + [sym_enable_extension_list] = { + .visible = true, + .named = true, + }, + [sym_requires_directive] = { + .visible = true, + .named = true, + }, + [sym_software_extension_list] = { + .visible = true, + .named = true, + }, + [sym_enable_extension_name] = { + .visible = true, + .named = true, + }, + [sym_software_extension_name] = { + .visible = true, + .named = true, + }, + [sym_severity_control_name] = { + .visible = true, + .named = true, + }, + [sym_swizzle_name] = { + .visible = true, + .named = true, + }, + [aux_sym_translation_unit_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_translation_unit_repeat2] = { + .visible = false, + .named = false, + }, + [aux_sym_template_arg_comma_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_struct_body_decl_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_struct_member_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_expression_comma_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_compound_statement_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_if_statement_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_switch_body_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_case_selectors_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_param_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_enable_extension_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_software_extension_list_repeat1] = { + .visible = false, + .named = false, + }, +}; + +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] = 5, + [6] = 6, + [7] = 7, + [8] = 8, + [9] = 9, + [10] = 10, + [11] = 11, + [12] = 12, + [13] = 13, + [14] = 14, + [15] = 15, + [16] = 16, + [17] = 17, + [18] = 18, + [19] = 19, + [20] = 20, + [21] = 21, + [22] = 20, + [23] = 20, + [24] = 24, + [25] = 24, + [26] = 24, + [27] = 24, + [28] = 20, + [29] = 24, + [30] = 24, + [31] = 31, + [32] = 24, + [33] = 24, + [34] = 20, + [35] = 20, + [36] = 20, + [37] = 20, + [38] = 24, + [39] = 39, + [40] = 24, + [41] = 20, + [42] = 20, + [43] = 43, + [44] = 44, + [45] = 45, + [46] = 46, + [47] = 47, + [48] = 48, + [49] = 49, + [50] = 50, + [51] = 51, + [52] = 51, + [53] = 53, + [54] = 54, + [55] = 55, + [56] = 53, + [57] = 57, + [58] = 53, + [59] = 51, + [60] = 53, + [61] = 61, + [62] = 62, + [63] = 63, + [64] = 64, + [65] = 65, + [66] = 66, + [67] = 51, + [68] = 68, + [69] = 51, + [70] = 70, + [71] = 71, + [72] = 72, + [73] = 73, + [74] = 74, + [75] = 75, + [76] = 51, + [77] = 53, + [78] = 53, + [79] = 51, + [80] = 80, + [81] = 53, + [82] = 51, + [83] = 53, + [84] = 84, + [85] = 85, + [86] = 86, + [87] = 87, + [88] = 88, + [89] = 53, + [90] = 90, + [91] = 51, + [92] = 92, + [93] = 51, + [94] = 94, + [95] = 53, + [96] = 51, + [97] = 97, + [98] = 98, + [99] = 98, + [100] = 97, + [101] = 101, + [102] = 102, + [103] = 103, + [104] = 103, + [105] = 105, + [106] = 103, + [107] = 103, + [108] = 108, + [109] = 108, + [110] = 108, + [111] = 108, + [112] = 108, + [113] = 108, + [114] = 114, + [115] = 114, + [116] = 114, + [117] = 114, + [118] = 118, + [119] = 119, + [120] = 118, + [121] = 114, + [122] = 114, + [123] = 119, + [124] = 114, + [125] = 114, + [126] = 118, + [127] = 118, + [128] = 119, + [129] = 119, + [130] = 130, + [131] = 131, + [132] = 132, + [133] = 119, + [134] = 114, + [135] = 130, + [136] = 131, + [137] = 132, + [138] = 114, + [139] = 118, + [140] = 118, + [141] = 119, + [142] = 142, + [143] = 143, + [144] = 144, + [145] = 145, + [146] = 146, + [147] = 147, + [148] = 148, + [149] = 149, + [150] = 150, + [151] = 151, + [152] = 152, + [153] = 153, + [154] = 154, + [155] = 155, + [156] = 156, + [157] = 157, + [158] = 158, + [159] = 159, + [160] = 153, + [161] = 161, + [162] = 162, + [163] = 163, + [164] = 164, + [165] = 165, + [166] = 166, + [167] = 167, + [168] = 168, + [169] = 161, + [170] = 170, + [171] = 171, + [172] = 172, + [173] = 173, + [174] = 174, + [175] = 175, + [176] = 176, + [177] = 177, + [178] = 145, + [179] = 179, + [180] = 180, + [181] = 181, + [182] = 182, + [183] = 183, + [184] = 184, + [185] = 145, + [186] = 186, + [187] = 187, + [188] = 147, + [189] = 147, + [190] = 190, + [191] = 191, + [192] = 192, + [193] = 193, + [194] = 194, + [195] = 151, + [196] = 196, + [197] = 197, + [198] = 198, + [199] = 199, + [200] = 145, + [201] = 201, + [202] = 202, + [203] = 203, + [204] = 204, + [205] = 205, + [206] = 206, + [207] = 151, + [208] = 208, + [209] = 148, + [210] = 210, + [211] = 211, + [212] = 212, + [213] = 149, + [214] = 214, + [215] = 152, + [216] = 216, + [217] = 150, + [218] = 218, + [219] = 219, + [220] = 220, + [221] = 150, + [222] = 222, + [223] = 223, + [224] = 152, + [225] = 225, + [226] = 226, + [227] = 227, + [228] = 149, + [229] = 229, + [230] = 230, + [231] = 231, + [232] = 232, + [233] = 148, + [234] = 234, + [235] = 235, + [236] = 156, + [237] = 159, + [238] = 238, + [239] = 239, + [240] = 240, + [241] = 241, + [242] = 173, + [243] = 164, + [244] = 163, + [245] = 162, + [246] = 246, + [247] = 174, + [248] = 248, + [249] = 157, + [250] = 155, + [251] = 148, + [252] = 161, + [253] = 253, + [254] = 254, + [255] = 255, + [256] = 256, + [257] = 161, + [258] = 155, + [259] = 259, + [260] = 158, + [261] = 261, + [262] = 165, + [263] = 153, + [264] = 264, + [265] = 166, + [266] = 159, + [267] = 153, + [268] = 165, + [269] = 154, + [270] = 154, + [271] = 158, + [272] = 156, + [273] = 157, + [274] = 162, + [275] = 275, + [276] = 163, + [277] = 277, + [278] = 164, + [279] = 173, + [280] = 166, + [281] = 281, + [282] = 174, + [283] = 283, + [284] = 284, + [285] = 285, + [286] = 145, + [287] = 287, + [288] = 288, + [289] = 289, + [290] = 290, + [291] = 291, + [292] = 292, + [293] = 150, + [294] = 182, + [295] = 145, + [296] = 296, + [297] = 147, + [298] = 298, + [299] = 184, + [300] = 300, + [301] = 301, + [302] = 147, + [303] = 303, + [304] = 181, + [305] = 181, + [306] = 182, + [307] = 184, + [308] = 183, + [309] = 180, + [310] = 179, + [311] = 180, + [312] = 183, + [313] = 148, + [314] = 152, + [315] = 149, + [316] = 150, + [317] = 152, + [318] = 151, + [319] = 145, + [320] = 149, + [321] = 147, + [322] = 151, + [323] = 156, + [324] = 173, + [325] = 165, + [326] = 155, + [327] = 327, + [328] = 159, + [329] = 153, + [330] = 330, + [331] = 159, + [332] = 154, + [333] = 147, + [334] = 149, + [335] = 335, + [336] = 157, + [337] = 158, + [338] = 163, + [339] = 166, + [340] = 162, + [341] = 341, + [342] = 161, + [343] = 155, + [344] = 150, + [345] = 174, + [346] = 166, + [347] = 173, + [348] = 164, + [349] = 163, + [350] = 162, + [351] = 157, + [352] = 156, + [353] = 164, + [354] = 174, + [355] = 148, + [356] = 152, + [357] = 158, + [358] = 154, + [359] = 165, + [360] = 151, + [361] = 163, + [362] = 165, + [363] = 363, + [364] = 156, + [365] = 158, + [366] = 159, + [367] = 153, + [368] = 368, + [369] = 240, + [370] = 155, + [371] = 154, + [372] = 157, + [373] = 152, + [374] = 162, + [375] = 148, + [376] = 150, + [377] = 161, + [378] = 174, + [379] = 151, + [380] = 164, + [381] = 149, + [382] = 173, + [383] = 383, + [384] = 166, + [385] = 184, + [386] = 174, + [387] = 182, + [388] = 283, + [389] = 152, + [390] = 154, + [391] = 157, + [392] = 151, + [393] = 162, + [394] = 163, + [395] = 164, + [396] = 153, + [397] = 287, + [398] = 173, + [399] = 166, + [400] = 155, + [401] = 165, + [402] = 161, + [403] = 180, + [404] = 184, + [405] = 145, + [406] = 406, + [407] = 159, + [408] = 183, + [409] = 182, + [410] = 181, + [411] = 156, + [412] = 181, + [413] = 240, + [414] = 158, + [415] = 183, + [416] = 180, + [417] = 145, + [418] = 156, + [419] = 182, + [420] = 301, + [421] = 283, + [422] = 184, + [423] = 423, + [424] = 303, + [425] = 147, + [426] = 287, + [427] = 158, + [428] = 240, + [429] = 183, + [430] = 430, + [431] = 181, + [432] = 432, + [433] = 433, + [434] = 180, + [435] = 147, + [436] = 183, + [437] = 437, + [438] = 150, + [439] = 423, + [440] = 149, + [441] = 184, + [442] = 152, + [443] = 180, + [444] = 152, + [445] = 150, + [446] = 148, + [447] = 287, + [448] = 182, + [449] = 145, + [450] = 283, + [451] = 151, + [452] = 151, + [453] = 303, + [454] = 301, + [455] = 181, + [456] = 148, + [457] = 149, + [458] = 153, + [459] = 335, + [460] = 162, + [461] = 166, + [462] = 462, + [463] = 463, + [464] = 163, + [465] = 154, + [466] = 147, + [467] = 157, + [468] = 173, + [469] = 155, + [470] = 166, + [471] = 161, + [472] = 158, + [473] = 473, + [474] = 162, + [475] = 156, + [476] = 476, + [477] = 174, + [478] = 159, + [479] = 479, + [480] = 174, + [481] = 157, + [482] = 164, + [483] = 184, + [484] = 164, + [485] = 173, + [486] = 161, + [487] = 158, + [488] = 159, + [489] = 155, + [490] = 490, + [491] = 165, + [492] = 182, + [493] = 163, + [494] = 153, + [495] = 165, + [496] = 154, + [497] = 156, + [498] = 148, + [499] = 150, + [500] = 151, + [501] = 501, + [502] = 502, + [503] = 335, + [504] = 149, + [505] = 152, + [506] = 183, + [507] = 507, + [508] = 508, + [509] = 508, + [510] = 510, + [511] = 164, + [512] = 512, + [513] = 513, + [514] = 514, + [515] = 515, + [516] = 508, + [517] = 508, + [518] = 508, + [519] = 508, + [520] = 520, + [521] = 521, + [522] = 508, + [523] = 523, + [524] = 184, + [525] = 525, + [526] = 526, + [527] = 527, + [528] = 528, + [529] = 529, + [530] = 530, + [531] = 531, + [532] = 532, + [533] = 533, + [534] = 534, + [535] = 535, + [536] = 182, + [537] = 537, + [538] = 538, + [539] = 539, + [540] = 184, + [541] = 155, + [542] = 174, + [543] = 181, + [544] = 182, + [545] = 545, + [546] = 546, + [547] = 240, + [548] = 166, + [549] = 173, + [550] = 508, + [551] = 508, + [552] = 163, + [553] = 508, + [554] = 554, + [555] = 162, + [556] = 157, + [557] = 180, + [558] = 558, + [559] = 154, + [560] = 508, + [561] = 180, + [562] = 183, + [563] = 563, + [564] = 159, + [565] = 335, + [566] = 566, + [567] = 567, + [568] = 568, + [569] = 158, + [570] = 153, + [571] = 181, + [572] = 156, + [573] = 573, + [574] = 165, + [575] = 575, + [576] = 576, + [577] = 161, + [578] = 578, + [579] = 579, + [580] = 433, + [581] = 283, + [582] = 582, + [583] = 583, + [584] = 584, + [585] = 585, + [586] = 423, + [587] = 240, + [588] = 588, + [589] = 287, + [590] = 590, + [591] = 301, + [592] = 303, + [593] = 283, + [594] = 423, + [595] = 181, + [596] = 182, + [597] = 597, + [598] = 184, + [599] = 599, + [600] = 287, + [601] = 183, + [602] = 180, + [603] = 433, + [604] = 604, + [605] = 605, + [606] = 606, + [607] = 607, + [608] = 608, + [609] = 609, + [610] = 610, + [611] = 609, + [612] = 335, + [613] = 613, + [614] = 614, + [615] = 615, + [616] = 610, + [617] = 617, + [618] = 335, + [619] = 619, + [620] = 620, + [621] = 621, + [622] = 622, + [623] = 623, + [624] = 624, + [625] = 625, + [626] = 626, + [627] = 627, + [628] = 599, + [629] = 629, + [630] = 630, + [631] = 631, + [632] = 433, + [633] = 633, + [634] = 406, + [635] = 597, + [636] = 636, + [637] = 637, + [638] = 638, + [639] = 639, + [640] = 640, + [641] = 641, + [642] = 642, + [643] = 608, + [644] = 607, + [645] = 606, + [646] = 605, + [647] = 604, + [648] = 648, + [649] = 649, + [650] = 650, + [651] = 651, + [652] = 652, + [653] = 653, + [654] = 654, + [655] = 655, + [656] = 656, + [657] = 657, + [658] = 658, + [659] = 659, + [660] = 660, + [661] = 661, + [662] = 662, + [663] = 663, + [664] = 664, + [665] = 665, + [666] = 666, + [667] = 667, + [668] = 668, + [669] = 669, + [670] = 670, + [671] = 671, + [672] = 672, + [673] = 673, + [674] = 674, + [675] = 675, + [676] = 432, + [677] = 430, + [678] = 678, + [679] = 679, + [680] = 680, + [681] = 681, + [682] = 682, + [683] = 683, + [684] = 684, + [685] = 685, + [686] = 686, + [687] = 687, + [688] = 688, + [689] = 689, + [690] = 690, + [691] = 691, + [692] = 692, + [693] = 693, + [694] = 694, + [695] = 695, + [696] = 696, + [697] = 697, + [698] = 698, + [699] = 699, + [700] = 700, + [701] = 701, + [702] = 702, + [703] = 703, + [704] = 704, + [705] = 705, + [706] = 706, + [707] = 707, + [708] = 708, + [709] = 709, + [710] = 710, + [711] = 711, + [712] = 712, + [713] = 713, + [714] = 714, + [715] = 715, + [716] = 716, + [717] = 717, + [718] = 718, + [719] = 719, + [720] = 720, + [721] = 721, + [722] = 722, + [723] = 723, + [724] = 724, + [725] = 725, + [726] = 726, + [727] = 727, + [728] = 728, + [729] = 729, + [730] = 730, + [731] = 731, + [732] = 732, + [733] = 733, + [734] = 734, + [735] = 735, + [736] = 736, + [737] = 737, + [738] = 738, + [739] = 739, + [740] = 740, + [741] = 741, + [742] = 742, + [743] = 743, + [744] = 615, + [745] = 745, + [746] = 746, + [747] = 747, + [748] = 748, + [749] = 749, + [750] = 750, + [751] = 751, + [752] = 752, + [753] = 753, + [754] = 754, + [755] = 755, + [756] = 756, + [757] = 757, + [758] = 758, + [759] = 759, + [760] = 760, + [761] = 761, + [762] = 762, + [763] = 763, + [764] = 750, + [765] = 765, + [766] = 766, + [767] = 767, + [768] = 768, + [769] = 769, + [770] = 770, + [771] = 771, + [772] = 772, + [773] = 773, + [774] = 774, + [775] = 775, + [776] = 776, + [777] = 762, + [778] = 758, + [779] = 757, + [780] = 754, + [781] = 753, + [782] = 750, + [783] = 783, + [784] = 767, + [785] = 785, + [786] = 786, + [787] = 787, + [788] = 788, + [789] = 762, + [790] = 758, + [791] = 757, + [792] = 750, + [793] = 793, + [794] = 767, + [795] = 795, + [796] = 796, + [797] = 797, + [798] = 798, + [799] = 762, + [800] = 758, + [801] = 757, + [802] = 750, + [803] = 803, + [804] = 767, + [805] = 805, + [806] = 806, + [807] = 807, + [808] = 808, + [809] = 762, + [810] = 758, + [811] = 757, + [812] = 750, + [813] = 813, + [814] = 767, + [815] = 815, + [816] = 767, + [817] = 817, + [818] = 818, + [819] = 762, + [820] = 758, + [821] = 757, + [822] = 822, + [823] = 823, + [824] = 767, + [825] = 825, + [826] = 762, + [827] = 758, + [828] = 757, + [829] = 750, + [830] = 830, + [831] = 767, + [832] = 832, + [833] = 762, + [834] = 758, + [835] = 757, + [836] = 750, + [837] = 837, + [838] = 767, + [839] = 839, + [840] = 762, + [841] = 758, + [842] = 757, + [843] = 750, + [844] = 844, + [845] = 767, + [846] = 846, + [847] = 762, + [848] = 758, + [849] = 757, + [850] = 850, + [851] = 757, + [852] = 852, + [853] = 853, + [854] = 854, + [855] = 855, + [856] = 856, + [857] = 857, + [858] = 858, + [859] = 859, + [860] = 855, + [861] = 854, + [862] = 853, + [863] = 766, + [864] = 765, + [865] = 750, + [866] = 866, + [867] = 867, + [868] = 868, + [869] = 869, + [870] = 870, + [871] = 763, + [872] = 872, + [873] = 873, + [874] = 874, + [875] = 875, + [876] = 876, + [877] = 877, + [878] = 878, + [879] = 879, + [880] = 880, + [881] = 881, + [882] = 882, + [883] = 883, + [884] = 884, + [885] = 885, + [886] = 886, + [887] = 887, + [888] = 888, + [889] = 889, + [890] = 890, + [891] = 891, + [892] = 892, + [893] = 893, + [894] = 625, + [895] = 462, +}; + +static TSCharacterRange sym_ident_pattern_token_character_set_1[] = { + {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, + {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x370, 0x374}, {0x376, 0x377}, {0x37b, 0x37d}, + {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x48a, 0x52f}, + {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x620, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, + {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x7a5}, + {0x7b1, 0x7b1}, {0x7ca, 0x7ea}, {0x7f4, 0x7f5}, {0x7fa, 0x7fa}, {0x800, 0x815}, {0x81a, 0x81a}, {0x824, 0x824}, {0x828, 0x828}, + {0x840, 0x858}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x8a0, 0x8c9}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, + {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, + {0x9bd, 0x9bd}, {0x9ce, 0x9ce}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0x9fc, 0x9fc}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, + {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, + {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, + {0xae0, 0xae1}, {0xaf9, 0xaf9}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, + {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, + {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbd0, 0xbd0}, {0xc05, 0xc0c}, + {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3d, 0xc3d}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc61}, {0xc80, 0xc80}, + {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcdd, 0xcde}, {0xce0, 0xce1}, + {0xcf1, 0xcf2}, {0xd04, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd3a}, {0xd3d, 0xd3d}, {0xd4e, 0xd4e}, {0xd54, 0xd56}, {0xd5f, 0xd61}, + {0xd7a, 0xd7f}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe32}, + {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xeb0}, {0xeb2, 0xeb2}, + {0xebd, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6c}, {0xf88, 0xf8c}, + {0x1000, 0x102a}, {0x103f, 0x103f}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, + {0x108e, 0x108e}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, + {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, + {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, + {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1711}, {0x171f, 0x1731}, {0x1740, 0x1751}, + {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1878}, {0x1880, 0x18a8}, {0x18aa, 0x18aa}, + {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, + {0x1aa7, 0x1aa7}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4c}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, + {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, {0x1cfa, 0x1cfa}, + {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, + {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, + {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x2102, 0x2102}, + {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, + {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, + {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, + {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x3005, 0x3007}, {0x3021, 0x3029}, {0x3031, 0x3035}, + {0x3038, 0x303c}, {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, + {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, + {0xa67f, 0xa69d}, {0xa6a0, 0xa6ef}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, + {0xa7f2, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fb, 0xa8fb}, + {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9cf, 0xa9cf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, + {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7a, 0xaa7a}, {0xaa7e, 0xaaaf}, {0xaab1, 0xaab1}, + {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaac0, 0xaac0}, {0xaac2, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, + {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabe2}, {0xac00, 0xd7a3}, + {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, + {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, + {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, + {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xff9d}, {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, + {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, + {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x10375}, {0x10380, 0x1039d}, + {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, + {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, + {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, + {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, + {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, + {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, + {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10e80, 0x10ea9}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27}, + {0x10f30, 0x10f45}, {0x10f70, 0x10f81}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11003, 0x11037}, {0x11071, 0x11072}, {0x11075, 0x11075}, {0x11083, 0x110af}, + {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, + {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, + {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, + {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, + {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a}, + {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192f}, + {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32}, + {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40}, + {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, + {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342e}, + {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, + {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, + {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b150, 0x1b152}, {0x1b164, 0x1b167}, + {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, + {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, + {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, + {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, + {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ad}, + {0x1e2c0, 0x1e2eb}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, + {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, + {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, + {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, + {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, + {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b738}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, +}; + +static TSCharacterRange sym_ident_pattern_token_character_set_2[] = { + {'0', '9'}, {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xb7, 0xb7}, {0xba, 0xba}, + {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x300, 0x374}, + {0x376, 0x377}, {0x37b, 0x37d}, {0x37f, 0x37f}, {0x386, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, + {0x483, 0x487}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x591, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, + {0x5c4, 0x5c5}, {0x5c7, 0x5c7}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x610, 0x61a}, {0x620, 0x669}, {0x66e, 0x6d3}, {0x6d5, 0x6dc}, + {0x6df, 0x6e8}, {0x6ea, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x74a}, {0x74d, 0x7b1}, {0x7c0, 0x7f5}, {0x7fa, 0x7fa}, {0x7fd, 0x7fd}, + {0x800, 0x82d}, {0x840, 0x85b}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x898, 0x8e1}, {0x8e3, 0x963}, {0x966, 0x96f}, + {0x971, 0x983}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bc, 0x9c4}, + {0x9c7, 0x9c8}, {0x9cb, 0x9ce}, {0x9d7, 0x9d7}, {0x9dc, 0x9dd}, {0x9df, 0x9e3}, {0x9e6, 0x9f1}, {0x9fc, 0x9fc}, {0x9fe, 0x9fe}, + {0xa01, 0xa03}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, + {0xa3c, 0xa3c}, {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa51, 0xa51}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa66, 0xa75}, + {0xa81, 0xa83}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabc, 0xac5}, + {0xac7, 0xac9}, {0xacb, 0xacd}, {0xad0, 0xad0}, {0xae0, 0xae3}, {0xae6, 0xaef}, {0xaf9, 0xaff}, {0xb01, 0xb03}, {0xb05, 0xb0c}, + {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3c, 0xb44}, {0xb47, 0xb48}, {0xb4b, 0xb4d}, + {0xb55, 0xb57}, {0xb5c, 0xb5d}, {0xb5f, 0xb63}, {0xb66, 0xb6f}, {0xb71, 0xb71}, {0xb82, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, + {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbbe, 0xbc2}, + {0xbc6, 0xbc8}, {0xbca, 0xbcd}, {0xbd0, 0xbd0}, {0xbd7, 0xbd7}, {0xbe6, 0xbef}, {0xc00, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, + {0xc2a, 0xc39}, {0xc3c, 0xc44}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc63}, + {0xc66, 0xc6f}, {0xc80, 0xc83}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbc, 0xcc4}, + {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, {0xcdd, 0xcde}, {0xce0, 0xce3}, {0xce6, 0xcef}, {0xcf1, 0xcf2}, {0xd00, 0xd0c}, + {0xd0e, 0xd10}, {0xd12, 0xd44}, {0xd46, 0xd48}, {0xd4a, 0xd4e}, {0xd54, 0xd57}, {0xd5f, 0xd63}, {0xd66, 0xd6f}, {0xd7a, 0xd7f}, + {0xd81, 0xd83}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xdca, 0xdca}, {0xdcf, 0xdd4}, + {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xde6, 0xdef}, {0xdf2, 0xdf3}, {0xe01, 0xe3a}, {0xe40, 0xe4e}, {0xe50, 0xe59}, {0xe81, 0xe82}, + {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xec8, 0xecd}, + {0xed0, 0xed9}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf18, 0xf19}, {0xf20, 0xf29}, {0xf35, 0xf35}, {0xf37, 0xf37}, {0xf39, 0xf39}, + {0xf3e, 0xf47}, {0xf49, 0xf6c}, {0xf71, 0xf84}, {0xf86, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x1000, 0x1049}, {0x1050, 0x109d}, + {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, + {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, + {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x135f}, {0x1369, 0x1371}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, + {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1715}, {0x171f, 0x1734}, + {0x1740, 0x1753}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17d3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dd}, {0x17e0, 0x17e9}, + {0x180b, 0x180d}, {0x180f, 0x1819}, {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1920, 0x192b}, {0x1930, 0x193b}, + {0x1946, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x1a00, 0x1a1b}, {0x1a20, 0x1a5e}, {0x1a60, 0x1a7c}, + {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, {0x1aa7, 0x1aa7}, {0x1ab0, 0x1abd}, {0x1abf, 0x1ace}, {0x1b00, 0x1b4c}, {0x1b50, 0x1b59}, {0x1b6b, 0x1b73}, + {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2}, + {0x1cd4, 0x1cfa}, {0x1d00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, + {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, + {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x203f, 0x2040}, {0x2054, 0x2054}, {0x2071, 0x2071}, {0x207f, 0x207f}, + {0x2090, 0x209c}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, {0x20e5, 0x20f0}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, + {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, + {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, + {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, + {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, {0x3099, 0x309a}, + {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, + {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, {0xa67f, 0xa6f1}, {0xa717, 0xa71f}, + {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, {0xa7f2, 0xa827}, {0xa82c, 0xa82c}, {0xa840, 0xa873}, + {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, {0xa8e0, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, {0xa980, 0xa9c0}, + {0xa9cf, 0xa9d9}, {0xa9e0, 0xa9fe}, {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa60, 0xaa76}, {0xaa7a, 0xaac2}, {0xaadb, 0xaadd}, + {0xaae0, 0xaaef}, {0xaaf2, 0xaaf6}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, + {0xab5c, 0xab69}, {0xab70, 0xabea}, {0xabec, 0xabed}, {0xabf0, 0xabf9}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, + {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, + {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe00, 0xfe0f}, + {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, + {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff3f, 0xff3f}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7}, + {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, + {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x101fd, 0x101fd}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x102e0, 0x102e0}, {0x10300, 0x1031f}, + {0x1032d, 0x1034a}, {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104a0, 0x104a9}, + {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, + {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, + {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, + {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, + {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, {0x10a60, 0x10a7c}, + {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, + {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, {0x10e80, 0x10ea9}, {0x10eab, 0x10eac}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, + {0x10f27, 0x10f27}, {0x10f30, 0x10f50}, {0x10f70, 0x10f85}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11000, 0x11046}, {0x11066, 0x11075}, {0x1107f, 0x110ba}, + {0x110c2, 0x110c2}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, {0x11100, 0x11134}, {0x11136, 0x1113f}, {0x11144, 0x11147}, {0x11150, 0x11173}, {0x11176, 0x11176}, + {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111ce, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x11237}, {0x1123e, 0x1123e}, {0x11280, 0x11286}, + {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, + {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, + {0x11350, 0x11350}, {0x11357, 0x11357}, {0x1135d, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11400, 0x1144a}, {0x11450, 0x11459}, {0x1145e, 0x11461}, + {0x11480, 0x114c5}, {0x114c7, 0x114c7}, {0x114d0, 0x114d9}, {0x11580, 0x115b5}, {0x115b8, 0x115c0}, {0x115d8, 0x115dd}, {0x11600, 0x11640}, {0x11644, 0x11644}, + {0x11650, 0x11659}, {0x11680, 0x116b8}, {0x116c0, 0x116c9}, {0x11700, 0x1171a}, {0x1171d, 0x1172b}, {0x11730, 0x11739}, {0x11740, 0x11746}, {0x11800, 0x1183a}, + {0x118a0, 0x118e9}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x11935}, {0x11937, 0x11938}, {0x1193b, 0x11943}, + {0x11950, 0x11959}, {0x119a0, 0x119a7}, {0x119aa, 0x119d7}, {0x119da, 0x119e1}, {0x119e3, 0x119e4}, {0x11a00, 0x11a3e}, {0x11a47, 0x11a47}, {0x11a50, 0x11a99}, + {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7}, + {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3a, 0x11d3a}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}, + {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef6}, {0x11fb0, 0x11fb0}, + {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, + {0x16a60, 0x16a69}, {0x16a70, 0x16abe}, {0x16ac0, 0x16ac9}, {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, {0x16b50, 0x16b59}, + {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f4f, 0x16f87}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe4}, + {0x16ff0, 0x16ff1}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, + {0x1b150, 0x1b152}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e}, + {0x1cf00, 0x1cf2d}, {0x1cf30, 0x1cf46}, {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, + {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, + {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, + {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, + {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, + {0x1da3b, 0x1da6c}, {0x1da75, 0x1da75}, {0x1da84, 0x1da84}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1df00, 0x1df1e}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, + {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e100, 0x1e12c}, {0x1e130, 0x1e13d}, {0x1e140, 0x1e149}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ae}, + {0x1e2c0, 0x1e2f9}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94b}, + {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, + {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, + {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, + {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, + {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1fbf0, 0x1fbf9}, {0x20000, 0x2a6df}, {0x2a700, 0x2b738}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, + {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0xe0100, 0xe01ef}, +}; + +static bool ts_lex(TSLexer *lexer, TSStateId state) { + START_LEXER(); + eof = lexer->eof(lexer); + switch (state) { + case 0: + if (eof) ADVANCE(32); + ADVANCE_MAP( + '!', 74, + '%', 84, + '&', 80, + '(', 62, + ')', 63, + '*', 77, + '+', 86, + ',', 60, + '-', 72, + '.', 59, + '/', 82, + '0', 35, + ':', 66, + ';', 33, + '=', 68, + '@', 61, + '[', 69, + ']', 70, + '^', 94, + '_', 95, + '{', 64, + '|', 91, + '}', 65, + '~', 75, + 'a', 109, + 'b', 109, + 'g', 109, + 'r', 109, + ); + if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(112); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(37); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x85 || + lookahead == 0x200e || + lookahead == 0x200f || + lookahead == 0x2028 || + lookahead == 0x2029) ADVANCE(115); + if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); + END_STATE(); + case 1: + ADVANCE_MAP( + '!', 9, + '%', 83, + '&', 79, + '(', 62, + ')', 63, + '*', 76, + '+', 85, + ',', 60, + '-', 71, + '.', 58, + '/', 81, + ':', 66, + ';', 33, + '=', 13, + '@', 61, + '[', 69, + ']', 70, + '^', 93, + '{', 64, + '|', 92, + ); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x85 || + lookahead == 0x200e || + lookahead == 0x200f || + lookahead == 0x2028 || + lookahead == 0x2029) ADVANCE(115); + END_STATE(); + case 2: + ADVANCE_MAP( + '%', 83, + '&', 78, + '(', 62, + ')', 63, + '*', 76, + '+', 85, + ',', 60, + '-', 71, + '.', 58, + '/', 81, + ':', 66, + ';', 33, + '=', 67, + '@', 61, + '[', 69, + ']', 70, + '^', 93, + '_', 30, + '{', 64, + '|', 92, + '}', 65, + ); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x85 || + lookahead == 0x200e || + lookahead == 0x200f || + lookahead == 0x2028 || + lookahead == 0x2029) ADVANCE(115); + if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); + END_STATE(); + case 3: + ADVANCE_MAP( + '%', 10, + '&', 11, + '(', 62, + '*', 12, + '+', 4, + '-', 5, + '.', 58, + '/', 8, + '=', 67, + '@', 61, + '[', 69, + '^', 14, + '{', 64, + '|', 15, + ); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x85 || + lookahead == 0x200e || + lookahead == 0x200f || + lookahead == 0x2028 || + lookahead == 0x2029) ADVANCE(115); + END_STATE(); + case 4: + if (lookahead == '+') ADVANCE(104); + if (lookahead == '=') ADVANCE(96); + END_STATE(); + case 5: + if (lookahead == '-') ADVANCE(105); + if (lookahead == '=') ADVANCE(97); + if (lookahead == '>') ADVANCE(106); + END_STATE(); + case 6: + if (lookahead == '.') ADVANCE(46); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(16); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(6); + END_STATE(); + case 7: + if (lookahead == '.') ADVANCE(29); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(39); + END_STATE(); + case 8: + if (lookahead == '/') ADVANCE(114); + if (lookahead == '=') ADVANCE(99); + END_STATE(); + case 9: + if (lookahead == '=') ADVANCE(88); + END_STATE(); + case 10: + if (lookahead == '=') ADVANCE(100); + END_STATE(); + case 11: + if (lookahead == '=') ADVANCE(101); + END_STATE(); + case 12: + if (lookahead == '=') ADVANCE(98); + END_STATE(); + case 13: + if (lookahead == '=') ADVANCE(87); + END_STATE(); + case 14: + if (lookahead == '=') ADVANCE(103); + END_STATE(); + case 15: + if (lookahead == '=') ADVANCE(102); + END_STATE(); + case 16: + if (lookahead == '+' || + lookahead == '-') ADVANCE(23); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(49); + END_STATE(); + case 17: + if (lookahead == '+' || + lookahead == '-') ADVANCE(24); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(44); + END_STATE(); + case 18: + if (lookahead == '+' || + lookahead == '-') ADVANCE(25); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(47); + END_STATE(); + case 19: + if (lookahead == '+' || + lookahead == '-') ADVANCE(26); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57); + END_STATE(); + case 20: + if (lookahead == '+' || + lookahead == '-') ADVANCE(27); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(52); + END_STATE(); + case 21: + if (lookahead == '+' || + lookahead == '-') ADVANCE(28); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(55); + END_STATE(); + case 22: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); + END_STATE(); + case 23: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(49); + END_STATE(); + case 24: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(44); + END_STATE(); + case 25: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(47); + END_STATE(); + case 26: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57); + END_STATE(); + case 27: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(52); + END_STATE(); + case 28: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(55); + END_STATE(); + case 29: + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); + END_STATE(); + case 30: + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 31: + if (eof) ADVANCE(32); + ADVANCE_MAP( + '!', 73, + '%', 83, + '&', 78, + '(', 62, + ')', 63, + '*', 76, + '+', 85, + ',', 60, + '-', 71, + '.', 22, + '/', 81, + '0', 35, + ':', 66, + ';', 33, + '=', 67, + '@', 61, + ']', 70, + '^', 93, + '_', 95, + '{', 64, + '|', 92, + '}', 65, + '~', 75, + ); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(37); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x85 || + lookahead == 0x200e || + lookahead == 0x200f || + lookahead == 0x2028 || + lookahead == 0x2029) ADVANCE(115); + if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); + END_STATE(); + case 32: + ACCEPT_TOKEN(ts_builtin_sym_end); + END_STATE(); + case 33: + ACCEPT_TOKEN(anon_sym_SEMI); + END_STATE(); + case 34: + ACCEPT_TOKEN(aux_sym_decimal_int_literal_token1); + END_STATE(); + case 35: + ACCEPT_TOKEN(aux_sym_decimal_int_literal_token1); + ADVANCE_MAP( + '.', 46, + 'E', 16, + 'e', 16, + 'X', 7, + 'x', 7, + 'f', 40, + 'h', 40, + 'i', 34, + 'u', 34, + ); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(6); + END_STATE(); + case 36: + ACCEPT_TOKEN(aux_sym_decimal_int_literal_token2); + END_STATE(); + case 37: + ACCEPT_TOKEN(aux_sym_decimal_int_literal_token2); + if (lookahead == '.') ADVANCE(46); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(16); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(41); + if (lookahead == 'i' || + lookahead == 'u') ADVANCE(36); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(37); + END_STATE(); + case 38: + ACCEPT_TOKEN(sym_hex_int_literal); + END_STATE(); + case 39: + ACCEPT_TOKEN(sym_hex_int_literal); + if (lookahead == '.') ADVANCE(54); + if (lookahead == 'P' || + lookahead == 'p') ADVANCE(19); + if (lookahead == 'i' || + lookahead == 'u') ADVANCE(38); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(39); + END_STATE(); + case 40: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token1); + END_STATE(); + case 41: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token2); + END_STATE(); + case 42: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); + END_STATE(); + case 43: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(17); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(42); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); + END_STATE(); + case 44: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(42); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(44); + END_STATE(); + case 45: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); + END_STATE(); + case 46: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(18); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(45); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); + END_STATE(); + case 47: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(45); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(47); + END_STATE(); + case 48: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token5); + END_STATE(); + case 49: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token5); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(48); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(49); + END_STATE(); + case 50: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); + END_STATE(); + case 51: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); + if (lookahead == 'P' || + lookahead == 'p') ADVANCE(20); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); + END_STATE(); + case 52: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(50); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(52); + END_STATE(); + case 53: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); + END_STATE(); + case 54: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); + if (lookahead == 'P' || + lookahead == 'p') ADVANCE(21); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); + END_STATE(); + case 55: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(53); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(55); + END_STATE(); + case 56: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token3); + END_STATE(); + case 57: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token3); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(56); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57); + END_STATE(); + case 58: + ACCEPT_TOKEN(anon_sym_DOT); + END_STATE(); + case 59: + ACCEPT_TOKEN(anon_sym_DOT); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); + END_STATE(); + case 60: + ACCEPT_TOKEN(anon_sym_COMMA); + END_STATE(); + case 61: + ACCEPT_TOKEN(anon_sym_AT); + END_STATE(); + case 62: + ACCEPT_TOKEN(anon_sym_LPAREN); + END_STATE(); + case 63: + ACCEPT_TOKEN(anon_sym_RPAREN); + END_STATE(); + case 64: + ACCEPT_TOKEN(anon_sym_LBRACE); + END_STATE(); + case 65: + ACCEPT_TOKEN(anon_sym_RBRACE); + END_STATE(); + case 66: + ACCEPT_TOKEN(anon_sym_COLON); + END_STATE(); + case 67: + ACCEPT_TOKEN(anon_sym_EQ); + END_STATE(); + case 68: + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(87); + END_STATE(); + case 69: + ACCEPT_TOKEN(anon_sym_LBRACK); + END_STATE(); + case 70: + ACCEPT_TOKEN(anon_sym_RBRACK); + END_STATE(); + case 71: + ACCEPT_TOKEN(anon_sym_DASH); + END_STATE(); + case 72: + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '=') ADVANCE(97); + if (lookahead == '>') ADVANCE(106); + END_STATE(); + case 73: + ACCEPT_TOKEN(anon_sym_BANG); + END_STATE(); + case 74: + ACCEPT_TOKEN(anon_sym_BANG); + if (lookahead == '=') ADVANCE(88); + END_STATE(); + case 75: + ACCEPT_TOKEN(anon_sym_TILDE); + END_STATE(); + case 76: + ACCEPT_TOKEN(anon_sym_STAR); + END_STATE(); + case 77: + ACCEPT_TOKEN(anon_sym_STAR); + if (lookahead == '=') ADVANCE(98); + END_STATE(); + case 78: + ACCEPT_TOKEN(anon_sym_AMP); + END_STATE(); + case 79: + ACCEPT_TOKEN(anon_sym_AMP); + if (lookahead == '&') ADVANCE(89); + END_STATE(); + case 80: + ACCEPT_TOKEN(anon_sym_AMP); + if (lookahead == '&') ADVANCE(89); + if (lookahead == '=') ADVANCE(101); + END_STATE(); + case 81: + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '/') ADVANCE(114); + END_STATE(); + case 82: + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '/') ADVANCE(114); + if (lookahead == '=') ADVANCE(99); + END_STATE(); + case 83: + ACCEPT_TOKEN(anon_sym_PERCENT); + END_STATE(); + case 84: + ACCEPT_TOKEN(anon_sym_PERCENT); + if (lookahead == '=') ADVANCE(100); + END_STATE(); + case 85: + ACCEPT_TOKEN(anon_sym_PLUS); + END_STATE(); + case 86: + ACCEPT_TOKEN(anon_sym_PLUS); + if (lookahead == '+') ADVANCE(104); + if (lookahead == '=') ADVANCE(96); + END_STATE(); + case 87: + ACCEPT_TOKEN(anon_sym_EQ_EQ); + END_STATE(); + case 88: + ACCEPT_TOKEN(anon_sym_BANG_EQ); + END_STATE(); + case 89: + ACCEPT_TOKEN(anon_sym_AMP_AMP); + END_STATE(); + case 90: + ACCEPT_TOKEN(anon_sym_PIPE_PIPE); + END_STATE(); + case 91: + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '=') ADVANCE(102); + if (lookahead == '|') ADVANCE(90); + END_STATE(); + case 92: + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '|') ADVANCE(90); + END_STATE(); + case 93: + ACCEPT_TOKEN(anon_sym_CARET); + END_STATE(); + case 94: + ACCEPT_TOKEN(anon_sym_CARET); + if (lookahead == '=') ADVANCE(103); + END_STATE(); + case 95: + ACCEPT_TOKEN(anon_sym__); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 96: + ACCEPT_TOKEN(anon_sym_PLUS_EQ); + END_STATE(); + case 97: + ACCEPT_TOKEN(anon_sym_DASH_EQ); + END_STATE(); + case 98: + ACCEPT_TOKEN(anon_sym_STAR_EQ); + END_STATE(); + case 99: + ACCEPT_TOKEN(anon_sym_SLASH_EQ); + END_STATE(); + case 100: + ACCEPT_TOKEN(anon_sym_PERCENT_EQ); + END_STATE(); + case 101: + ACCEPT_TOKEN(anon_sym_AMP_EQ); + END_STATE(); + case 102: + ACCEPT_TOKEN(anon_sym_PIPE_EQ); + END_STATE(); + case 103: + ACCEPT_TOKEN(anon_sym_CARET_EQ); + END_STATE(); + case 104: + ACCEPT_TOKEN(anon_sym_PLUS_PLUS); + END_STATE(); + case 105: + ACCEPT_TOKEN(anon_sym_DASH_DASH); + END_STATE(); + case 106: + ACCEPT_TOKEN(anon_sym_DASH_GT); + END_STATE(); + case 107: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (lookahead == 'a' || + lookahead == 'b' || + lookahead == 'g' || + lookahead == 'r') ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 108: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (lookahead == 'a' || + lookahead == 'b' || + lookahead == 'g' || + lookahead == 'r') ADVANCE(107); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 109: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (lookahead == 'a' || + lookahead == 'b' || + lookahead == 'g' || + lookahead == 'r') ADVANCE(108); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 110: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 111: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(110); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 112: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(111); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 113: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 114: + ACCEPT_TOKEN(sym__comment); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(114); + END_STATE(); + case 115: + ACCEPT_TOKEN(sym__blankspace); + END_STATE(); + default: + return false; + } +} + +static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { + START_LEXER(); + eof = lexer->eof(lexer); + switch (state) { + case 0: + ADVANCE_MAP( + 'a', 1, + 'b', 2, + 'c', 3, + 'd', 4, + 'e', 5, + 'f', 6, + 'g', 7, + 'i', 8, + 'l', 9, + 'm', 10, + 'o', 11, + 'r', 12, + 's', 13, + 't', 14, + 'v', 15, + 'w', 16, + ); + END_STATE(); + case 1: + if (lookahead == 'l') ADVANCE(17); + END_STATE(); + case 2: + if (lookahead == 'i') ADVANCE(18); + if (lookahead == 'l') ADVANCE(19); + if (lookahead == 'r') ADVANCE(20); + if (lookahead == 'u') ADVANCE(21); + END_STATE(); + case 3: + if (lookahead == 'a') ADVANCE(22); + if (lookahead == 'o') ADVANCE(23); + END_STATE(); + case 4: + if (lookahead == 'e') ADVANCE(24); + if (lookahead == 'i') ADVANCE(25); + END_STATE(); + case 5: + if (lookahead == 'l') ADVANCE(26); + if (lookahead == 'n') ADVANCE(27); + END_STATE(); + case 6: + if (lookahead == 'a') ADVANCE(28); + if (lookahead == 'n') ADVANCE(29); + if (lookahead == 'o') ADVANCE(30); + if (lookahead == 'r') ADVANCE(31); + END_STATE(); + case 7: + if (lookahead == 'r') ADVANCE(32); + END_STATE(); + case 8: + if (lookahead == 'd') ADVANCE(33); + if (lookahead == 'f') ADVANCE(34); + if (lookahead == 'n') ADVANCE(35); + END_STATE(); + case 9: + if (lookahead == 'e') ADVANCE(36); + if (lookahead == 'o') ADVANCE(37); + END_STATE(); + case 10: + if (lookahead == 'u') ADVANCE(38); + END_STATE(); + case 11: + if (lookahead == 'v') ADVANCE(39); + END_STATE(); + case 12: + if (lookahead == 'e') ADVANCE(40); + END_STATE(); + case 13: + if (lookahead == 'i') ADVANCE(41); + if (lookahead == 't') ADVANCE(42); + if (lookahead == 'w') ADVANCE(43); + END_STATE(); + case 14: + if (lookahead == 'r') ADVANCE(44); + END_STATE(); + case 15: + if (lookahead == 'a') ADVANCE(45); + if (lookahead == 'e') ADVANCE(46); + END_STATE(); + case 16: + if (lookahead == 'h') ADVANCE(47); + if (lookahead == 'o') ADVANCE(48); + END_STATE(); + case 17: + if (lookahead == 'i') ADVANCE(49); + END_STATE(); + case 18: + if (lookahead == 'n') ADVANCE(50); + END_STATE(); + case 19: + if (lookahead == 'e') ADVANCE(51); + END_STATE(); + case 20: + if (lookahead == 'e') ADVANCE(52); + END_STATE(); + case 21: + if (lookahead == 'i') ADVANCE(53); + END_STATE(); + case 22: + if (lookahead == 's') ADVANCE(54); + END_STATE(); + case 23: + if (lookahead == 'm') ADVANCE(55); + if (lookahead == 'n') ADVANCE(56); + END_STATE(); + case 24: + if (lookahead == 'f') ADVANCE(57); + END_STATE(); + case 25: + if (lookahead == 'a') ADVANCE(58); + if (lookahead == 's') ADVANCE(59); + END_STATE(); + case 26: + if (lookahead == 's') ADVANCE(60); + END_STATE(); + case 27: + if (lookahead == 'a') ADVANCE(61); + END_STATE(); + case 28: + if (lookahead == 'l') ADVANCE(62); + END_STATE(); + case 29: + ACCEPT_TOKEN(anon_sym_fn); + END_STATE(); + case 30: + if (lookahead == 'r') ADVANCE(63); + END_STATE(); + case 31: + if (lookahead == 'a') ADVANCE(64); + END_STATE(); + case 32: + if (lookahead == 'o') ADVANCE(65); + END_STATE(); + case 33: + ACCEPT_TOKEN(anon_sym_id); + END_STATE(); + case 34: + ACCEPT_TOKEN(anon_sym_if); + END_STATE(); + case 35: + if (lookahead == 't') ADVANCE(66); + if (lookahead == 'v') ADVANCE(67); + END_STATE(); + case 36: + if (lookahead == 't') ADVANCE(68); + END_STATE(); + case 37: + if (lookahead == 'c') ADVANCE(69); + if (lookahead == 'o') ADVANCE(70); + END_STATE(); + case 38: + if (lookahead == 's') ADVANCE(71); + END_STATE(); + case 39: + if (lookahead == 'e') ADVANCE(72); + END_STATE(); + case 40: + if (lookahead == 'q') ADVANCE(73); + if (lookahead == 't') ADVANCE(74); + END_STATE(); + case 41: + if (lookahead == 'z') ADVANCE(75); + END_STATE(); + case 42: + if (lookahead == 'r') ADVANCE(76); + END_STATE(); + case 43: + if (lookahead == 'i') ADVANCE(77); + END_STATE(); + case 44: + if (lookahead == 'u') ADVANCE(78); + END_STATE(); + case 45: + if (lookahead == 'r') ADVANCE(79); + END_STATE(); + case 46: + if (lookahead == 'r') ADVANCE(80); + END_STATE(); + case 47: + if (lookahead == 'i') ADVANCE(81); + END_STATE(); + case 48: + if (lookahead == 'r') ADVANCE(82); + END_STATE(); + case 49: + if (lookahead == 'a') ADVANCE(83); + if (lookahead == 'g') ADVANCE(84); + END_STATE(); + case 50: + if (lookahead == 'd') ADVANCE(85); + END_STATE(); + case 51: + if (lookahead == 'n') ADVANCE(86); + END_STATE(); + case 52: + if (lookahead == 'a') ADVANCE(87); + END_STATE(); + case 53: + if (lookahead == 'l') ADVANCE(88); + END_STATE(); + case 54: + if (lookahead == 'e') ADVANCE(89); + END_STATE(); + case 55: + if (lookahead == 'p') ADVANCE(90); + END_STATE(); + case 56: + if (lookahead == 's') ADVANCE(91); + if (lookahead == 't') ADVANCE(92); + END_STATE(); + case 57: + if (lookahead == 'a') ADVANCE(93); + END_STATE(); + case 58: + if (lookahead == 'g') ADVANCE(94); + END_STATE(); + case 59: + if (lookahead == 'c') ADVANCE(95); + END_STATE(); + case 60: + if (lookahead == 'e') ADVANCE(96); + END_STATE(); + case 61: + if (lookahead == 'b') ADVANCE(97); + END_STATE(); + case 62: + if (lookahead == 's') ADVANCE(98); + END_STATE(); + case 63: + ACCEPT_TOKEN(anon_sym_for); + END_STATE(); + case 64: + if (lookahead == 'g') ADVANCE(99); + END_STATE(); + case 65: + if (lookahead == 'u') ADVANCE(100); + END_STATE(); + case 66: + if (lookahead == 'e') ADVANCE(101); + END_STATE(); + case 67: + if (lookahead == 'a') ADVANCE(102); + END_STATE(); + case 68: + ACCEPT_TOKEN(anon_sym_let); + END_STATE(); + case 69: + if (lookahead == 'a') ADVANCE(103); + END_STATE(); + case 70: + if (lookahead == 'p') ADVANCE(104); + END_STATE(); + case 71: + if (lookahead == 't') ADVANCE(105); + END_STATE(); + case 72: + if (lookahead == 'r') ADVANCE(106); + END_STATE(); + case 73: + if (lookahead == 'u') ADVANCE(107); + END_STATE(); + case 74: + if (lookahead == 'u') ADVANCE(108); + END_STATE(); + case 75: + if (lookahead == 'e') ADVANCE(109); + END_STATE(); + case 76: + if (lookahead == 'u') ADVANCE(110); + END_STATE(); + case 77: + if (lookahead == 't') ADVANCE(111); + END_STATE(); + case 78: + if (lookahead == 'e') ADVANCE(112); + END_STATE(); + case 79: + ACCEPT_TOKEN(anon_sym_var); + END_STATE(); + case 80: + if (lookahead == 't') ADVANCE(113); + END_STATE(); + case 81: + if (lookahead == 'l') ADVANCE(114); + END_STATE(); + case 82: + if (lookahead == 'k') ADVANCE(115); + END_STATE(); + case 83: + if (lookahead == 's') ADVANCE(116); + END_STATE(); + case 84: + if (lookahead == 'n') ADVANCE(117); + END_STATE(); + case 85: + if (lookahead == 'i') ADVANCE(118); + END_STATE(); + case 86: + if (lookahead == 'd') ADVANCE(119); + END_STATE(); + case 87: + if (lookahead == 'k') ADVANCE(120); + END_STATE(); + case 88: + if (lookahead == 't') ADVANCE(121); + END_STATE(); + case 89: + ACCEPT_TOKEN(anon_sym_case); + END_STATE(); + case 90: + if (lookahead == 'u') ADVANCE(122); + END_STATE(); + case 91: + if (lookahead == 't') ADVANCE(123); + END_STATE(); + case 92: + if (lookahead == 'i') ADVANCE(124); + END_STATE(); + case 93: + if (lookahead == 'u') ADVANCE(125); + END_STATE(); + case 94: + if (lookahead == 'n') ADVANCE(126); + END_STATE(); + case 95: + if (lookahead == 'a') ADVANCE(127); + END_STATE(); + case 96: + ACCEPT_TOKEN(anon_sym_else); + END_STATE(); + case 97: + if (lookahead == 'l') ADVANCE(128); + END_STATE(); + case 98: + if (lookahead == 'e') ADVANCE(129); + END_STATE(); + case 99: + if (lookahead == 'm') ADVANCE(130); + END_STATE(); + case 100: + if (lookahead == 'p') ADVANCE(131); + END_STATE(); + case 101: + if (lookahead == 'r') ADVANCE(132); + END_STATE(); + case 102: + if (lookahead == 'r') ADVANCE(133); + END_STATE(); + case 103: + if (lookahead == 't') ADVANCE(134); + END_STATE(); + case 104: + ACCEPT_TOKEN(anon_sym_loop); + END_STATE(); + case 105: + if (lookahead == '_') ADVANCE(135); + END_STATE(); + case 106: + if (lookahead == 'r') ADVANCE(136); + END_STATE(); + case 107: + if (lookahead == 'i') ADVANCE(137); + END_STATE(); + case 108: + if (lookahead == 'r') ADVANCE(138); + END_STATE(); + case 109: + ACCEPT_TOKEN(anon_sym_size); + END_STATE(); + case 110: + if (lookahead == 'c') ADVANCE(139); + END_STATE(); + case 111: + if (lookahead == 'c') ADVANCE(140); + END_STATE(); + case 112: + ACCEPT_TOKEN(anon_sym_true); + END_STATE(); + case 113: + if (lookahead == 'e') ADVANCE(141); + END_STATE(); + case 114: + if (lookahead == 'e') ADVANCE(142); + END_STATE(); + case 115: + if (lookahead == 'g') ADVANCE(143); + END_STATE(); + case 116: + ACCEPT_TOKEN(anon_sym_alias); + END_STATE(); + case 117: + ACCEPT_TOKEN(anon_sym_align); + END_STATE(); + case 118: + if (lookahead == 'n') ADVANCE(144); + END_STATE(); + case 119: + if (lookahead == '_') ADVANCE(145); + END_STATE(); + case 120: + ACCEPT_TOKEN(anon_sym_break); + END_STATE(); + case 121: + if (lookahead == 'i') ADVANCE(146); + END_STATE(); + case 122: + if (lookahead == 't') ADVANCE(147); + END_STATE(); + case 123: + ACCEPT_TOKEN(anon_sym_const); + if (lookahead == '_') ADVANCE(148); + END_STATE(); + case 124: + if (lookahead == 'n') ADVANCE(149); + END_STATE(); + case 125: + if (lookahead == 'l') ADVANCE(150); + END_STATE(); + case 126: + if (lookahead == 'o') ADVANCE(151); + END_STATE(); + case 127: + if (lookahead == 'r') ADVANCE(152); + END_STATE(); + case 128: + if (lookahead == 'e') ADVANCE(153); + END_STATE(); + case 129: + ACCEPT_TOKEN(anon_sym_false); + END_STATE(); + case 130: + if (lookahead == 'e') ADVANCE(154); + END_STATE(); + case 131: + ACCEPT_TOKEN(anon_sym_group); + END_STATE(); + case 132: + if (lookahead == 'p') ADVANCE(155); + END_STATE(); + case 133: + if (lookahead == 'i') ADVANCE(156); + END_STATE(); + case 134: + if (lookahead == 'i') ADVANCE(157); + END_STATE(); + case 135: + if (lookahead == 'u') ADVANCE(158); + END_STATE(); + case 136: + if (lookahead == 'i') ADVANCE(159); + END_STATE(); + case 137: + if (lookahead == 'r') ADVANCE(160); + END_STATE(); + case 138: + if (lookahead == 'n') ADVANCE(161); + END_STATE(); + case 139: + if (lookahead == 't') ADVANCE(162); + END_STATE(); + case 140: + if (lookahead == 'h') ADVANCE(163); + END_STATE(); + case 141: + if (lookahead == 'x') ADVANCE(164); + END_STATE(); + case 142: + ACCEPT_TOKEN(anon_sym_while); + END_STATE(); + case 143: + if (lookahead == 'r') ADVANCE(165); + END_STATE(); + case 144: + if (lookahead == 'g') ADVANCE(166); + END_STATE(); + case 145: + if (lookahead == 's') ADVANCE(167); + END_STATE(); + case 146: + if (lookahead == 'n') ADVANCE(168); + END_STATE(); + case 147: + if (lookahead == 'e') ADVANCE(169); + END_STATE(); + case 148: + if (lookahead == 'a') ADVANCE(170); + END_STATE(); + case 149: + if (lookahead == 'u') ADVANCE(171); + END_STATE(); + case 150: + if (lookahead == 't') ADVANCE(172); + END_STATE(); + case 151: + if (lookahead == 's') ADVANCE(173); + END_STATE(); + case 152: + if (lookahead == 'd') ADVANCE(174); + END_STATE(); + case 153: + ACCEPT_TOKEN(anon_sym_enable); + END_STATE(); + case 154: + if (lookahead == 'n') ADVANCE(175); + END_STATE(); + case 155: + if (lookahead == 'o') ADVANCE(176); + END_STATE(); + case 156: + if (lookahead == 'a') ADVANCE(177); + END_STATE(); + case 157: + if (lookahead == 'o') ADVANCE(178); + END_STATE(); + case 158: + if (lookahead == 's') ADVANCE(179); + END_STATE(); + case 159: + if (lookahead == 'd') ADVANCE(180); + END_STATE(); + case 160: + if (lookahead == 'e') ADVANCE(181); + END_STATE(); + case 161: + ACCEPT_TOKEN(anon_sym_return); + END_STATE(); + case 162: + ACCEPT_TOKEN(anon_sym_struct); + END_STATE(); + case 163: + ACCEPT_TOKEN(anon_sym_switch); + END_STATE(); + case 164: + ACCEPT_TOKEN(anon_sym_vertex); + END_STATE(); + case 165: + if (lookahead == 'o') ADVANCE(182); + END_STATE(); + case 166: + ACCEPT_TOKEN(anon_sym_binding); + END_STATE(); + case 167: + if (lookahead == 'r') ADVANCE(183); + END_STATE(); + case 168: + ACCEPT_TOKEN(anon_sym_builtin); + END_STATE(); + case 169: + ACCEPT_TOKEN(anon_sym_compute); + END_STATE(); + case 170: + if (lookahead == 's') ADVANCE(184); + END_STATE(); + case 171: + if (lookahead == 'e') ADVANCE(185); + if (lookahead == 'i') ADVANCE(186); + END_STATE(); + case 172: + ACCEPT_TOKEN(anon_sym_default); + END_STATE(); + case 173: + if (lookahead == 't') ADVANCE(187); + END_STATE(); + case 174: + ACCEPT_TOKEN(anon_sym_discard); + END_STATE(); + case 175: + if (lookahead == 't') ADVANCE(188); + END_STATE(); + case 176: + if (lookahead == 'l') ADVANCE(189); + END_STATE(); + case 177: + if (lookahead == 'n') ADVANCE(190); + END_STATE(); + case 178: + if (lookahead == 'n') ADVANCE(191); + END_STATE(); + case 179: + if (lookahead == 'e') ADVANCE(192); + END_STATE(); + case 180: + if (lookahead == 'e') ADVANCE(193); + END_STATE(); + case 181: + if (lookahead == 's') ADVANCE(194); + END_STATE(); + case 182: + if (lookahead == 'u') ADVANCE(195); + END_STATE(); + case 183: + if (lookahead == 'c') ADVANCE(196); + END_STATE(); + case 184: + if (lookahead == 's') ADVANCE(197); + END_STATE(); + case 185: + ACCEPT_TOKEN(sym_continue_statement); + END_STATE(); + case 186: + if (lookahead == 'n') ADVANCE(198); + END_STATE(); + case 187: + if (lookahead == 'i') ADVANCE(199); + END_STATE(); + case 188: + ACCEPT_TOKEN(anon_sym_fragment); + END_STATE(); + case 189: + if (lookahead == 'a') ADVANCE(200); + END_STATE(); + case 190: + if (lookahead == 't') ADVANCE(201); + END_STATE(); + case 191: + ACCEPT_TOKEN(anon_sym_location); + END_STATE(); + case 192: + ACCEPT_TOKEN(anon_sym_must_use); + END_STATE(); + case 193: + ACCEPT_TOKEN(anon_sym_override); + END_STATE(); + case 194: + ACCEPT_TOKEN(anon_sym_requires); + END_STATE(); + case 195: + if (lookahead == 'p') ADVANCE(202); + END_STATE(); + case 196: + ACCEPT_TOKEN(anon_sym_blend_src); + END_STATE(); + case 197: + if (lookahead == 'e') ADVANCE(203); + END_STATE(); + case 198: + if (lookahead == 'g') ADVANCE(204); + END_STATE(); + case 199: + if (lookahead == 'c') ADVANCE(205); + END_STATE(); + case 200: + if (lookahead == 't') ADVANCE(206); + END_STATE(); + case 201: + ACCEPT_TOKEN(anon_sym_invariant); + END_STATE(); + case 202: + if (lookahead == '_') ADVANCE(207); + END_STATE(); + case 203: + if (lookahead == 'r') ADVANCE(208); + END_STATE(); + case 204: + ACCEPT_TOKEN(anon_sym_continuing); + END_STATE(); + case 205: + ACCEPT_TOKEN(anon_sym_diagnostic); + END_STATE(); + case 206: + if (lookahead == 'e') ADVANCE(209); + END_STATE(); + case 207: + if (lookahead == 's') ADVANCE(210); + END_STATE(); + case 208: + if (lookahead == 't') ADVANCE(211); + END_STATE(); + case 209: + ACCEPT_TOKEN(anon_sym_interpolate); + END_STATE(); + case 210: + if (lookahead == 'i') ADVANCE(212); + END_STATE(); + case 211: + ACCEPT_TOKEN(anon_sym_const_assert); + END_STATE(); + case 212: + if (lookahead == 'z') ADVANCE(213); + END_STATE(); + case 213: + if (lookahead == 'e') ADVANCE(214); + END_STATE(); + case 214: + ACCEPT_TOKEN(anon_sym_workgroup_size); + END_STATE(); + default: + return false; + } +} + +static const TSLexMode ts_lex_modes[STATE_COUNT] = { + [0] = {.lex_state = 0, .external_lex_state = 1}, + [1] = {.lex_state = 0, .external_lex_state = 2}, + [2] = {.lex_state = 31, .external_lex_state = 2}, + [3] = {.lex_state = 31, .external_lex_state = 2}, + [4] = {.lex_state = 31, .external_lex_state = 2}, + [5] = {.lex_state = 31, .external_lex_state = 2}, + [6] = {.lex_state = 31, .external_lex_state = 2}, + [7] = {.lex_state = 31, .external_lex_state = 2}, + [8] = {.lex_state = 31, .external_lex_state = 2}, + [9] = {.lex_state = 31, .external_lex_state = 2}, + [10] = {.lex_state = 31, .external_lex_state = 2}, + [11] = {.lex_state = 31, .external_lex_state = 2}, + [12] = {.lex_state = 31, .external_lex_state = 2}, + [13] = {.lex_state = 31, .external_lex_state = 2}, + [14] = {.lex_state = 31, .external_lex_state = 2}, + [15] = {.lex_state = 31, .external_lex_state = 2}, + [16] = {.lex_state = 31, .external_lex_state = 2}, + [17] = {.lex_state = 31, .external_lex_state = 2}, + [18] = {.lex_state = 31, .external_lex_state = 2}, + [19] = {.lex_state = 31, .external_lex_state = 2}, + [20] = {.lex_state = 31, .external_lex_state = 2}, + [21] = {.lex_state = 31, .external_lex_state = 2}, + [22] = {.lex_state = 31, .external_lex_state = 2}, + [23] = {.lex_state = 31, .external_lex_state = 2}, + [24] = {.lex_state = 31, .external_lex_state = 2}, + [25] = {.lex_state = 31, .external_lex_state = 2}, + [26] = {.lex_state = 31, .external_lex_state = 2}, + [27] = {.lex_state = 31, .external_lex_state = 2}, + [28] = {.lex_state = 31, .external_lex_state = 2}, + [29] = {.lex_state = 31, .external_lex_state = 2}, + [30] = {.lex_state = 31, .external_lex_state = 2}, + [31] = {.lex_state = 31, .external_lex_state = 3}, + [32] = {.lex_state = 31, .external_lex_state = 2}, + [33] = {.lex_state = 31, .external_lex_state = 2}, + [34] = {.lex_state = 31, .external_lex_state = 2}, + [35] = {.lex_state = 31, .external_lex_state = 2}, + [36] = {.lex_state = 31, .external_lex_state = 2}, + [37] = {.lex_state = 31, .external_lex_state = 2}, + [38] = {.lex_state = 31, .external_lex_state = 2}, + [39] = {.lex_state = 31, .external_lex_state = 3}, + [40] = {.lex_state = 31, .external_lex_state = 2}, + [41] = {.lex_state = 31, .external_lex_state = 2}, + [42] = {.lex_state = 31, .external_lex_state = 2}, + [43] = {.lex_state = 31, .external_lex_state = 2}, + [44] = {.lex_state = 31, .external_lex_state = 2}, + [45] = {.lex_state = 31, .external_lex_state = 2}, + [46] = {.lex_state = 31, .external_lex_state = 2}, + [47] = {.lex_state = 31, .external_lex_state = 2}, + [48] = {.lex_state = 31, .external_lex_state = 2}, + [49] = {.lex_state = 31, .external_lex_state = 2}, + [50] = {.lex_state = 31, .external_lex_state = 2}, + [51] = {.lex_state = 31, .external_lex_state = 2}, + [52] = {.lex_state = 31, .external_lex_state = 2}, + [53] = {.lex_state = 31, .external_lex_state = 2}, + [54] = {.lex_state = 31, .external_lex_state = 2}, + [55] = {.lex_state = 0, .external_lex_state = 2}, + [56] = {.lex_state = 31, .external_lex_state = 2}, + [57] = {.lex_state = 31, .external_lex_state = 2}, + [58] = {.lex_state = 31, .external_lex_state = 2}, + [59] = {.lex_state = 31, .external_lex_state = 2}, + [60] = {.lex_state = 31, .external_lex_state = 2}, + [61] = {.lex_state = 31, .external_lex_state = 2}, + [62] = {.lex_state = 31, .external_lex_state = 2}, + [63] = {.lex_state = 31, .external_lex_state = 2}, + [64] = {.lex_state = 31, .external_lex_state = 2}, + [65] = {.lex_state = 31, .external_lex_state = 2}, + [66] = {.lex_state = 31, .external_lex_state = 2}, + [67] = {.lex_state = 31, .external_lex_state = 2}, + [68] = {.lex_state = 31, .external_lex_state = 2}, + [69] = {.lex_state = 31, .external_lex_state = 2}, + [70] = {.lex_state = 31, .external_lex_state = 2}, + [71] = {.lex_state = 31, .external_lex_state = 2}, + [72] = {.lex_state = 31, .external_lex_state = 2}, + [73] = {.lex_state = 31, .external_lex_state = 2}, + [74] = {.lex_state = 31, .external_lex_state = 2}, + [75] = {.lex_state = 31, .external_lex_state = 2}, + [76] = {.lex_state = 31, .external_lex_state = 2}, + [77] = {.lex_state = 31, .external_lex_state = 2}, + [78] = {.lex_state = 31, .external_lex_state = 2}, + [79] = {.lex_state = 31, .external_lex_state = 2}, + [80] = {.lex_state = 31, .external_lex_state = 2}, + [81] = {.lex_state = 31, .external_lex_state = 2}, + [82] = {.lex_state = 31, .external_lex_state = 2}, + [83] = {.lex_state = 31, .external_lex_state = 2}, + [84] = {.lex_state = 31, .external_lex_state = 2}, + [85] = {.lex_state = 31, .external_lex_state = 2}, + [86] = {.lex_state = 31, .external_lex_state = 2}, + [87] = {.lex_state = 31, .external_lex_state = 2}, + [88] = {.lex_state = 31, .external_lex_state = 2}, + [89] = {.lex_state = 31, .external_lex_state = 2}, + [90] = {.lex_state = 31, .external_lex_state = 2}, + [91] = {.lex_state = 31, .external_lex_state = 2}, + [92] = {.lex_state = 31, .external_lex_state = 2}, + [93] = {.lex_state = 31, .external_lex_state = 2}, + [94] = {.lex_state = 31, .external_lex_state = 2}, + [95] = {.lex_state = 31, .external_lex_state = 2}, + [96] = {.lex_state = 31, .external_lex_state = 2}, + [97] = {.lex_state = 31, .external_lex_state = 2}, + [98] = {.lex_state = 31, .external_lex_state = 2}, + [99] = {.lex_state = 31, .external_lex_state = 2}, + [100] = {.lex_state = 31, .external_lex_state = 2}, + [101] = {.lex_state = 0, .external_lex_state = 2}, + [102] = {.lex_state = 0, .external_lex_state = 2}, + [103] = {.lex_state = 31, .external_lex_state = 2}, + [104] = {.lex_state = 31, .external_lex_state = 2}, + [105] = {.lex_state = 0, .external_lex_state = 2}, + [106] = {.lex_state = 31, .external_lex_state = 2}, + [107] = {.lex_state = 31, .external_lex_state = 2}, + [108] = {.lex_state = 31, .external_lex_state = 2}, + [109] = {.lex_state = 31, .external_lex_state = 2}, + [110] = {.lex_state = 31, .external_lex_state = 2}, + [111] = {.lex_state = 31, .external_lex_state = 2}, + [112] = {.lex_state = 31, .external_lex_state = 2}, + [113] = {.lex_state = 31, .external_lex_state = 2}, + [114] = {.lex_state = 31, .external_lex_state = 2}, + [115] = {.lex_state = 31, .external_lex_state = 2}, + [116] = {.lex_state = 31, .external_lex_state = 2}, + [117] = {.lex_state = 31, .external_lex_state = 2}, + [118] = {.lex_state = 31, .external_lex_state = 2}, + [119] = {.lex_state = 31, .external_lex_state = 2}, + [120] = {.lex_state = 31, .external_lex_state = 2}, + [121] = {.lex_state = 31, .external_lex_state = 2}, + [122] = {.lex_state = 31, .external_lex_state = 2}, + [123] = {.lex_state = 31, .external_lex_state = 2}, + [124] = {.lex_state = 31, .external_lex_state = 2}, + [125] = {.lex_state = 31, .external_lex_state = 2}, + [126] = {.lex_state = 31, .external_lex_state = 2}, + [127] = {.lex_state = 31, .external_lex_state = 2}, + [128] = {.lex_state = 31, .external_lex_state = 2}, + [129] = {.lex_state = 31, .external_lex_state = 2}, + [130] = {.lex_state = 31, .external_lex_state = 2}, + [131] = {.lex_state = 31, .external_lex_state = 2}, + [132] = {.lex_state = 31, .external_lex_state = 2}, + [133] = {.lex_state = 31, .external_lex_state = 2}, + [134] = {.lex_state = 31, .external_lex_state = 2}, + [135] = {.lex_state = 31, .external_lex_state = 2}, + [136] = {.lex_state = 31, .external_lex_state = 2}, + [137] = {.lex_state = 31, .external_lex_state = 2}, + [138] = {.lex_state = 31, .external_lex_state = 2}, + [139] = {.lex_state = 31, .external_lex_state = 2}, + [140] = {.lex_state = 31, .external_lex_state = 2}, + [141] = {.lex_state = 31, .external_lex_state = 2}, + [142] = {.lex_state = 31, .external_lex_state = 2}, + [143] = {.lex_state = 31, .external_lex_state = 2}, + [144] = {.lex_state = 31, .external_lex_state = 2}, + [145] = {.lex_state = 1, .external_lex_state = 4}, + [146] = {.lex_state = 0, .external_lex_state = 2}, + [147] = {.lex_state = 1, .external_lex_state = 5}, + [148] = {.lex_state = 1, .external_lex_state = 5}, + [149] = {.lex_state = 1, .external_lex_state = 5}, + [150] = {.lex_state = 1, .external_lex_state = 5}, + [151] = {.lex_state = 1, .external_lex_state = 5}, + [152] = {.lex_state = 1, .external_lex_state = 5}, + [153] = {.lex_state = 1, .external_lex_state = 5}, + [154] = {.lex_state = 1, .external_lex_state = 5}, + [155] = {.lex_state = 1, .external_lex_state = 5}, + [156] = {.lex_state = 1, .external_lex_state = 5}, + [157] = {.lex_state = 1, .external_lex_state = 5}, + [158] = {.lex_state = 1, .external_lex_state = 5}, + [159] = {.lex_state = 1, .external_lex_state = 5}, + [160] = {.lex_state = 2, .external_lex_state = 2}, + [161] = {.lex_state = 1, .external_lex_state = 5}, + [162] = {.lex_state = 1, .external_lex_state = 5}, + [163] = {.lex_state = 1, .external_lex_state = 5}, + [164] = {.lex_state = 1, .external_lex_state = 5}, + [165] = {.lex_state = 1, .external_lex_state = 5}, + [166] = {.lex_state = 1, .external_lex_state = 5}, + [167] = {.lex_state = 31, .external_lex_state = 2}, + [168] = {.lex_state = 0, .external_lex_state = 2}, + [169] = {.lex_state = 2, .external_lex_state = 2}, + [170] = {.lex_state = 31, .external_lex_state = 2}, + [171] = {.lex_state = 31, .external_lex_state = 2}, + [172] = {.lex_state = 31, .external_lex_state = 2}, + [173] = {.lex_state = 1, .external_lex_state = 5}, + [174] = {.lex_state = 1, .external_lex_state = 5}, + [175] = {.lex_state = 31, .external_lex_state = 2}, + [176] = {.lex_state = 0, .external_lex_state = 2}, + [177] = {.lex_state = 0, .external_lex_state = 2}, + [178] = {.lex_state = 1, .external_lex_state = 6}, + [179] = {.lex_state = 1, .external_lex_state = 5}, + [180] = {.lex_state = 1, .external_lex_state = 5}, + [181] = {.lex_state = 1, .external_lex_state = 5}, + [182] = {.lex_state = 1, .external_lex_state = 5}, + [183] = {.lex_state = 1, .external_lex_state = 5}, + [184] = {.lex_state = 1, .external_lex_state = 5}, + [185] = {.lex_state = 1, .external_lex_state = 7}, + [186] = {.lex_state = 0, .external_lex_state = 2}, + [187] = {.lex_state = 31, .external_lex_state = 2}, + [188] = {.lex_state = 1, .external_lex_state = 8}, + [189] = {.lex_state = 1, .external_lex_state = 9}, + [190] = {.lex_state = 0, .external_lex_state = 2}, + [191] = {.lex_state = 31, .external_lex_state = 2}, + [192] = {.lex_state = 0, .external_lex_state = 2}, + [193] = {.lex_state = 0, .external_lex_state = 2}, + [194] = {.lex_state = 31, .external_lex_state = 2}, + [195] = {.lex_state = 1, .external_lex_state = 9}, + [196] = {.lex_state = 0, .external_lex_state = 2}, + [197] = {.lex_state = 31, .external_lex_state = 2}, + [198] = {.lex_state = 31, .external_lex_state = 2}, + [199] = {.lex_state = 31, .external_lex_state = 2}, + [200] = {.lex_state = 2, .external_lex_state = 10}, + [201] = {.lex_state = 31, .external_lex_state = 2}, + [202] = {.lex_state = 0, .external_lex_state = 2}, + [203] = {.lex_state = 31, .external_lex_state = 2}, + [204] = {.lex_state = 0, .external_lex_state = 2}, + [205] = {.lex_state = 0, .external_lex_state = 2}, + [206] = {.lex_state = 0, .external_lex_state = 2}, + [207] = {.lex_state = 1, .external_lex_state = 8}, + [208] = {.lex_state = 0, .external_lex_state = 2}, + [209] = {.lex_state = 1, .external_lex_state = 8}, + [210] = {.lex_state = 31, .external_lex_state = 2}, + [211] = {.lex_state = 31, .external_lex_state = 2}, + [212] = {.lex_state = 31, .external_lex_state = 2}, + [213] = {.lex_state = 1, .external_lex_state = 8}, + [214] = {.lex_state = 0, .external_lex_state = 2}, + [215] = {.lex_state = 1, .external_lex_state = 8}, + [216] = {.lex_state = 31, .external_lex_state = 2}, + [217] = {.lex_state = 1, .external_lex_state = 8}, + [218] = {.lex_state = 31, .external_lex_state = 2}, + [219] = {.lex_state = 31, .external_lex_state = 2}, + [220] = {.lex_state = 31, .external_lex_state = 2}, + [221] = {.lex_state = 1, .external_lex_state = 9}, + [222] = {.lex_state = 0, .external_lex_state = 2}, + [223] = {.lex_state = 31, .external_lex_state = 2}, + [224] = {.lex_state = 1, .external_lex_state = 9}, + [225] = {.lex_state = 31, .external_lex_state = 2}, + [226] = {.lex_state = 0, .external_lex_state = 2}, + [227] = {.lex_state = 31, .external_lex_state = 2}, + [228] = {.lex_state = 1, .external_lex_state = 9}, + [229] = {.lex_state = 31, .external_lex_state = 2}, + [230] = {.lex_state = 31, .external_lex_state = 2}, + [231] = {.lex_state = 31, .external_lex_state = 2}, + [232] = {.lex_state = 0, .external_lex_state = 2}, + [233] = {.lex_state = 1, .external_lex_state = 9}, + [234] = {.lex_state = 31, .external_lex_state = 2}, + [235] = {.lex_state = 31, .external_lex_state = 2}, + [236] = {.lex_state = 1, .external_lex_state = 9}, + [237] = {.lex_state = 1, .external_lex_state = 9}, + [238] = {.lex_state = 0, .external_lex_state = 2}, + [239] = {.lex_state = 0, .external_lex_state = 2}, + [240] = {.lex_state = 1, .external_lex_state = 5}, + [241] = {.lex_state = 0, .external_lex_state = 2}, + [242] = {.lex_state = 1, .external_lex_state = 9}, + [243] = {.lex_state = 1, .external_lex_state = 9}, + [244] = {.lex_state = 1, .external_lex_state = 9}, + [245] = {.lex_state = 1, .external_lex_state = 9}, + [246] = {.lex_state = 0, .external_lex_state = 2}, + [247] = {.lex_state = 1, .external_lex_state = 9}, + [248] = {.lex_state = 0, .external_lex_state = 2}, + [249] = {.lex_state = 1, .external_lex_state = 9}, + [250] = {.lex_state = 1, .external_lex_state = 9}, + [251] = {.lex_state = 2, .external_lex_state = 2}, + [252] = {.lex_state = 1, .external_lex_state = 9}, + [253] = {.lex_state = 0, .external_lex_state = 2}, + [254] = {.lex_state = 0, .external_lex_state = 2}, + [255] = {.lex_state = 0, .external_lex_state = 2}, + [256] = {.lex_state = 0, .external_lex_state = 2}, + [257] = {.lex_state = 1, .external_lex_state = 8}, + [258] = {.lex_state = 1, .external_lex_state = 8}, + [259] = {.lex_state = 0, .external_lex_state = 2}, + [260] = {.lex_state = 1, .external_lex_state = 9}, + [261] = {.lex_state = 0, .external_lex_state = 2}, + [262] = {.lex_state = 1, .external_lex_state = 8}, + [263] = {.lex_state = 1, .external_lex_state = 9}, + [264] = {.lex_state = 0, .external_lex_state = 2}, + [265] = {.lex_state = 1, .external_lex_state = 9}, + [266] = {.lex_state = 1, .external_lex_state = 8}, + [267] = {.lex_state = 1, .external_lex_state = 8}, + [268] = {.lex_state = 1, .external_lex_state = 9}, + [269] = {.lex_state = 1, .external_lex_state = 9}, + [270] = {.lex_state = 1, .external_lex_state = 8}, + [271] = {.lex_state = 1, .external_lex_state = 8}, + [272] = {.lex_state = 1, .external_lex_state = 8}, + [273] = {.lex_state = 1, .external_lex_state = 8}, + [274] = {.lex_state = 1, .external_lex_state = 8}, + [275] = {.lex_state = 0, .external_lex_state = 2}, + [276] = {.lex_state = 1, .external_lex_state = 8}, + [277] = {.lex_state = 0, .external_lex_state = 2}, + [278] = {.lex_state = 1, .external_lex_state = 8}, + [279] = {.lex_state = 1, .external_lex_state = 8}, + [280] = {.lex_state = 1, .external_lex_state = 8}, + [281] = {.lex_state = 0, .external_lex_state = 2}, + [282] = {.lex_state = 1, .external_lex_state = 8}, + [283] = {.lex_state = 1, .external_lex_state = 8}, + [284] = {.lex_state = 0, .external_lex_state = 2}, + [285] = {.lex_state = 0, .external_lex_state = 2}, + [286] = {.lex_state = 1, .external_lex_state = 11}, + [287] = {.lex_state = 1, .external_lex_state = 8}, + [288] = {.lex_state = 0, .external_lex_state = 2}, + [289] = {.lex_state = 0, .external_lex_state = 2}, + [290] = {.lex_state = 0, .external_lex_state = 2}, + [291] = {.lex_state = 0, .external_lex_state = 2}, + [292] = {.lex_state = 0, .external_lex_state = 2}, + [293] = {.lex_state = 2, .external_lex_state = 2}, + [294] = {.lex_state = 1, .external_lex_state = 9}, + [295] = {.lex_state = 1, .external_lex_state = 12}, + [296] = {.lex_state = 31, .external_lex_state = 2}, + [297] = {.lex_state = 1, .external_lex_state = 13}, + [298] = {.lex_state = 31, .external_lex_state = 2}, + [299] = {.lex_state = 1, .external_lex_state = 9}, + [300] = {.lex_state = 31, .external_lex_state = 2}, + [301] = {.lex_state = 1, .external_lex_state = 8}, + [302] = {.lex_state = 2, .external_lex_state = 2}, + [303] = {.lex_state = 1, .external_lex_state = 8}, + [304] = {.lex_state = 1, .external_lex_state = 8}, + [305] = {.lex_state = 1, .external_lex_state = 9}, + [306] = {.lex_state = 1, .external_lex_state = 8}, + [307] = {.lex_state = 1, .external_lex_state = 8}, + [308] = {.lex_state = 1, .external_lex_state = 8}, + [309] = {.lex_state = 1, .external_lex_state = 8}, + [310] = {.lex_state = 1, .external_lex_state = 9}, + [311] = {.lex_state = 1, .external_lex_state = 9}, + [312] = {.lex_state = 1, .external_lex_state = 9}, + [313] = {.lex_state = 1, .external_lex_state = 13}, + [314] = {.lex_state = 1, .external_lex_state = 13}, + [315] = {.lex_state = 1, .external_lex_state = 13}, + [316] = {.lex_state = 1, .external_lex_state = 13}, + [317] = {.lex_state = 2, .external_lex_state = 2}, + [318] = {.lex_state = 2, .external_lex_state = 2}, + [319] = {.lex_state = 1, .external_lex_state = 10}, + [320] = {.lex_state = 2, .external_lex_state = 2}, + [321] = {.lex_state = 1, .external_lex_state = 14}, + [322] = {.lex_state = 1, .external_lex_state = 13}, + [323] = {.lex_state = 2, .external_lex_state = 2}, + [324] = {.lex_state = 2, .external_lex_state = 2}, + [325] = {.lex_state = 2, .external_lex_state = 2}, + [326] = {.lex_state = 2, .external_lex_state = 2}, + [327] = {.lex_state = 0, .external_lex_state = 2}, + [328] = {.lex_state = 2, .external_lex_state = 2}, + [329] = {.lex_state = 1, .external_lex_state = 13}, + [330] = {.lex_state = 0, .external_lex_state = 2}, + [331] = {.lex_state = 1, .external_lex_state = 13}, + [332] = {.lex_state = 2, .external_lex_state = 2}, + [333] = {.lex_state = 1, .external_lex_state = 2}, + [334] = {.lex_state = 1, .external_lex_state = 14}, + [335] = {.lex_state = 1, .external_lex_state = 8}, + [336] = {.lex_state = 2, .external_lex_state = 2}, + [337] = {.lex_state = 1, .external_lex_state = 13}, + [338] = {.lex_state = 2, .external_lex_state = 2}, + [339] = {.lex_state = 2, .external_lex_state = 2}, + [340] = {.lex_state = 2, .external_lex_state = 2}, + [341] = {.lex_state = 3, .external_lex_state = 15}, + [342] = {.lex_state = 1, .external_lex_state = 13}, + [343] = {.lex_state = 1, .external_lex_state = 13}, + [344] = {.lex_state = 1, .external_lex_state = 14}, + [345] = {.lex_state = 1, .external_lex_state = 13}, + [346] = {.lex_state = 1, .external_lex_state = 13}, + [347] = {.lex_state = 1, .external_lex_state = 13}, + [348] = {.lex_state = 1, .external_lex_state = 13}, + [349] = {.lex_state = 1, .external_lex_state = 13}, + [350] = {.lex_state = 1, .external_lex_state = 13}, + [351] = {.lex_state = 1, .external_lex_state = 13}, + [352] = {.lex_state = 1, .external_lex_state = 13}, + [353] = {.lex_state = 2, .external_lex_state = 2}, + [354] = {.lex_state = 2, .external_lex_state = 2}, + [355] = {.lex_state = 1, .external_lex_state = 14}, + [356] = {.lex_state = 1, .external_lex_state = 14}, + [357] = {.lex_state = 2, .external_lex_state = 2}, + [358] = {.lex_state = 1, .external_lex_state = 13}, + [359] = {.lex_state = 1, .external_lex_state = 13}, + [360] = {.lex_state = 1, .external_lex_state = 14}, + [361] = {.lex_state = 1, .external_lex_state = 14}, + [362] = {.lex_state = 1, .external_lex_state = 14}, + [363] = {.lex_state = 31, .external_lex_state = 2}, + [364] = {.lex_state = 1, .external_lex_state = 14}, + [365] = {.lex_state = 1, .external_lex_state = 14}, + [366] = {.lex_state = 1, .external_lex_state = 14}, + [367] = {.lex_state = 1, .external_lex_state = 14}, + [368] = {.lex_state = 31, .external_lex_state = 2}, + [369] = {.lex_state = 1, .external_lex_state = 9}, + [370] = {.lex_state = 1, .external_lex_state = 14}, + [371] = {.lex_state = 1, .external_lex_state = 14}, + [372] = {.lex_state = 1, .external_lex_state = 14}, + [373] = {.lex_state = 1, .external_lex_state = 2}, + [374] = {.lex_state = 1, .external_lex_state = 14}, + [375] = {.lex_state = 1, .external_lex_state = 2}, + [376] = {.lex_state = 1, .external_lex_state = 2}, + [377] = {.lex_state = 1, .external_lex_state = 14}, + [378] = {.lex_state = 1, .external_lex_state = 14}, + [379] = {.lex_state = 1, .external_lex_state = 2}, + [380] = {.lex_state = 1, .external_lex_state = 14}, + [381] = {.lex_state = 1, .external_lex_state = 2}, + [382] = {.lex_state = 1, .external_lex_state = 14}, + [383] = {.lex_state = 31, .external_lex_state = 2}, + [384] = {.lex_state = 1, .external_lex_state = 14}, + [385] = {.lex_state = 31, .external_lex_state = 2}, + [386] = {.lex_state = 1, .external_lex_state = 2}, + [387] = {.lex_state = 31, .external_lex_state = 2}, + [388] = {.lex_state = 1, .external_lex_state = 14}, + [389] = {.lex_state = 3, .external_lex_state = 16}, + [390] = {.lex_state = 1, .external_lex_state = 2}, + [391] = {.lex_state = 1, .external_lex_state = 2}, + [392] = {.lex_state = 3, .external_lex_state = 16}, + [393] = {.lex_state = 1, .external_lex_state = 2}, + [394] = {.lex_state = 1, .external_lex_state = 2}, + [395] = {.lex_state = 1, .external_lex_state = 2}, + [396] = {.lex_state = 1, .external_lex_state = 2}, + [397] = {.lex_state = 1, .external_lex_state = 14}, + [398] = {.lex_state = 1, .external_lex_state = 2}, + [399] = {.lex_state = 1, .external_lex_state = 2}, + [400] = {.lex_state = 1, .external_lex_state = 2}, + [401] = {.lex_state = 1, .external_lex_state = 2}, + [402] = {.lex_state = 1, .external_lex_state = 2}, + [403] = {.lex_state = 1, .external_lex_state = 13}, + [404] = {.lex_state = 1, .external_lex_state = 13}, + [405] = {.lex_state = 1, .external_lex_state = 17}, + [406] = {.lex_state = 3, .external_lex_state = 16}, + [407] = {.lex_state = 1, .external_lex_state = 2}, + [408] = {.lex_state = 1, .external_lex_state = 13}, + [409] = {.lex_state = 1, .external_lex_state = 13}, + [410] = {.lex_state = 1, .external_lex_state = 13}, + [411] = {.lex_state = 1, .external_lex_state = 2}, + [412] = {.lex_state = 31, .external_lex_state = 2}, + [413] = {.lex_state = 1, .external_lex_state = 13}, + [414] = {.lex_state = 1, .external_lex_state = 2}, + [415] = {.lex_state = 31, .external_lex_state = 2}, + [416] = {.lex_state = 31, .external_lex_state = 2}, + [417] = {.lex_state = 2, .external_lex_state = 18}, + [418] = {.lex_state = 3, .external_lex_state = 16}, + [419] = {.lex_state = 1, .external_lex_state = 14}, + [420] = {.lex_state = 1, .external_lex_state = 14}, + [421] = {.lex_state = 1, .external_lex_state = 2}, + [422] = {.lex_state = 1, .external_lex_state = 14}, + [423] = {.lex_state = 1, .external_lex_state = 8}, + [424] = {.lex_state = 1, .external_lex_state = 14}, + [425] = {.lex_state = 1, .external_lex_state = 19}, + [426] = {.lex_state = 1, .external_lex_state = 2}, + [427] = {.lex_state = 3, .external_lex_state = 16}, + [428] = {.lex_state = 31, .external_lex_state = 13}, + [429] = {.lex_state = 1, .external_lex_state = 14}, + [430] = {.lex_state = 3, .external_lex_state = 16}, + [431] = {.lex_state = 1, .external_lex_state = 14}, + [432] = {.lex_state = 3, .external_lex_state = 16}, + [433] = {.lex_state = 1, .external_lex_state = 8}, + [434] = {.lex_state = 1, .external_lex_state = 14}, + [435] = {.lex_state = 2, .external_lex_state = 3}, + [436] = {.lex_state = 1, .external_lex_state = 2}, + [437] = {.lex_state = 3, .external_lex_state = 16}, + [438] = {.lex_state = 1, .external_lex_state = 19}, + [439] = {.lex_state = 1, .external_lex_state = 8}, + [440] = {.lex_state = 2, .external_lex_state = 3}, + [441] = {.lex_state = 1, .external_lex_state = 2}, + [442] = {.lex_state = 1, .external_lex_state = 19}, + [443] = {.lex_state = 1, .external_lex_state = 2}, + [444] = {.lex_state = 2, .external_lex_state = 3}, + [445] = {.lex_state = 2, .external_lex_state = 3}, + [446] = {.lex_state = 2, .external_lex_state = 3}, + [447] = {.lex_state = 31, .external_lex_state = 2}, + [448] = {.lex_state = 1, .external_lex_state = 2}, + [449] = {.lex_state = 1, .external_lex_state = 18}, + [450] = {.lex_state = 31, .external_lex_state = 2}, + [451] = {.lex_state = 1, .external_lex_state = 19}, + [452] = {.lex_state = 2, .external_lex_state = 3}, + [453] = {.lex_state = 1, .external_lex_state = 2}, + [454] = {.lex_state = 1, .external_lex_state = 2}, + [455] = {.lex_state = 1, .external_lex_state = 2}, + [456] = {.lex_state = 1, .external_lex_state = 19}, + [457] = {.lex_state = 1, .external_lex_state = 19}, + [458] = {.lex_state = 1, .external_lex_state = 19}, + [459] = {.lex_state = 1, .external_lex_state = 14}, + [460] = {.lex_state = 1, .external_lex_state = 19}, + [461] = {.lex_state = 1, .external_lex_state = 19}, + [462] = {.lex_state = 3, .external_lex_state = 16}, + [463] = {.lex_state = 0, .external_lex_state = 2}, + [464] = {.lex_state = 1, .external_lex_state = 19}, + [465] = {.lex_state = 1, .external_lex_state = 19}, + [466] = {.lex_state = 1, .external_lex_state = 3}, + [467] = {.lex_state = 2, .external_lex_state = 3}, + [468] = {.lex_state = 2, .external_lex_state = 3}, + [469] = {.lex_state = 1, .external_lex_state = 19}, + [470] = {.lex_state = 2, .external_lex_state = 3}, + [471] = {.lex_state = 2, .external_lex_state = 3}, + [472] = {.lex_state = 2, .external_lex_state = 3}, + [473] = {.lex_state = 0, .external_lex_state = 2}, + [474] = {.lex_state = 2, .external_lex_state = 3}, + [475] = {.lex_state = 2, .external_lex_state = 3}, + [476] = {.lex_state = 0, .external_lex_state = 2}, + [477] = {.lex_state = 1, .external_lex_state = 19}, + [478] = {.lex_state = 1, .external_lex_state = 19}, + [479] = {.lex_state = 0, .external_lex_state = 2}, + [480] = {.lex_state = 2, .external_lex_state = 3}, + [481] = {.lex_state = 1, .external_lex_state = 19}, + [482] = {.lex_state = 2, .external_lex_state = 3}, + [483] = {.lex_state = 3, .external_lex_state = 16}, + [484] = {.lex_state = 1, .external_lex_state = 19}, + [485] = {.lex_state = 1, .external_lex_state = 19}, + [486] = {.lex_state = 1, .external_lex_state = 19}, + [487] = {.lex_state = 1, .external_lex_state = 19}, + [488] = {.lex_state = 2, .external_lex_state = 3}, + [489] = {.lex_state = 2, .external_lex_state = 3}, + [490] = {.lex_state = 0, .external_lex_state = 2}, + [491] = {.lex_state = 1, .external_lex_state = 19}, + [492] = {.lex_state = 3, .external_lex_state = 16}, + [493] = {.lex_state = 2, .external_lex_state = 3}, + [494] = {.lex_state = 2, .external_lex_state = 3}, + [495] = {.lex_state = 2, .external_lex_state = 3}, + [496] = {.lex_state = 2, .external_lex_state = 3}, + [497] = {.lex_state = 1, .external_lex_state = 19}, + [498] = {.lex_state = 1, .external_lex_state = 3}, + [499] = {.lex_state = 1, .external_lex_state = 3}, + [500] = {.lex_state = 1, .external_lex_state = 3}, + [501] = {.lex_state = 0, .external_lex_state = 2}, + [502] = {.lex_state = 0, .external_lex_state = 2}, + [503] = {.lex_state = 1, .external_lex_state = 2}, + [504] = {.lex_state = 1, .external_lex_state = 3}, + [505] = {.lex_state = 1, .external_lex_state = 3}, + [506] = {.lex_state = 1, .external_lex_state = 19}, + [507] = {.lex_state = 0, .external_lex_state = 2}, + [508] = {.lex_state = 0, .external_lex_state = 2}, + [509] = {.lex_state = 0, .external_lex_state = 2}, + [510] = {.lex_state = 0, .external_lex_state = 2}, + [511] = {.lex_state = 1, .external_lex_state = 3}, + [512] = {.lex_state = 0, .external_lex_state = 2}, + [513] = {.lex_state = 0, .external_lex_state = 2}, + [514] = {.lex_state = 0, .external_lex_state = 2}, + [515] = {.lex_state = 0, .external_lex_state = 2}, + [516] = {.lex_state = 0, .external_lex_state = 2}, + [517] = {.lex_state = 0, .external_lex_state = 2}, + [518] = {.lex_state = 0, .external_lex_state = 2}, + [519] = {.lex_state = 0, .external_lex_state = 2}, + [520] = {.lex_state = 0, .external_lex_state = 2}, + [521] = {.lex_state = 0, .external_lex_state = 2}, + [522] = {.lex_state = 0, .external_lex_state = 2}, + [523] = {.lex_state = 0, .external_lex_state = 2}, + [524] = {.lex_state = 1, .external_lex_state = 19}, + [525] = {.lex_state = 0, .external_lex_state = 2}, + [526] = {.lex_state = 0, .external_lex_state = 2}, + [527] = {.lex_state = 0, .external_lex_state = 2}, + [528] = {.lex_state = 0, .external_lex_state = 2}, + [529] = {.lex_state = 0, .external_lex_state = 2}, + [530] = {.lex_state = 0, .external_lex_state = 2}, + [531] = {.lex_state = 0, .external_lex_state = 2}, + [532] = {.lex_state = 0, .external_lex_state = 2}, + [533] = {.lex_state = 0, .external_lex_state = 2}, + [534] = {.lex_state = 0, .external_lex_state = 2}, + [535] = {.lex_state = 0, .external_lex_state = 2}, + [536] = {.lex_state = 31, .external_lex_state = 3}, + [537] = {.lex_state = 0, .external_lex_state = 2}, + [538] = {.lex_state = 0, .external_lex_state = 2}, + [539] = {.lex_state = 0, .external_lex_state = 2}, + [540] = {.lex_state = 31, .external_lex_state = 3}, + [541] = {.lex_state = 1, .external_lex_state = 3}, + [542] = {.lex_state = 1, .external_lex_state = 3}, + [543] = {.lex_state = 31, .external_lex_state = 3}, + [544] = {.lex_state = 1, .external_lex_state = 19}, + [545] = {.lex_state = 0, .external_lex_state = 2}, + [546] = {.lex_state = 0, .external_lex_state = 2}, + [547] = {.lex_state = 1, .external_lex_state = 19}, + [548] = {.lex_state = 1, .external_lex_state = 3}, + [549] = {.lex_state = 1, .external_lex_state = 3}, + [550] = {.lex_state = 0, .external_lex_state = 2}, + [551] = {.lex_state = 0, .external_lex_state = 2}, + [552] = {.lex_state = 1, .external_lex_state = 3}, + [553] = {.lex_state = 0, .external_lex_state = 2}, + [554] = {.lex_state = 0, .external_lex_state = 2}, + [555] = {.lex_state = 1, .external_lex_state = 3}, + [556] = {.lex_state = 1, .external_lex_state = 3}, + [557] = {.lex_state = 31, .external_lex_state = 3}, + [558] = {.lex_state = 0, .external_lex_state = 2}, + [559] = {.lex_state = 1, .external_lex_state = 3}, + [560] = {.lex_state = 0, .external_lex_state = 2}, + [561] = {.lex_state = 1, .external_lex_state = 19}, + [562] = {.lex_state = 31, .external_lex_state = 3}, + [563] = {.lex_state = 0, .external_lex_state = 2}, + [564] = {.lex_state = 1, .external_lex_state = 3}, + [565] = {.lex_state = 31, .external_lex_state = 2}, + [566] = {.lex_state = 0, .external_lex_state = 2}, + [567] = {.lex_state = 0, .external_lex_state = 2}, + [568] = {.lex_state = 0, .external_lex_state = 2}, + [569] = {.lex_state = 1, .external_lex_state = 3}, + [570] = {.lex_state = 1, .external_lex_state = 3}, + [571] = {.lex_state = 1, .external_lex_state = 19}, + [572] = {.lex_state = 1, .external_lex_state = 3}, + [573] = {.lex_state = 0, .external_lex_state = 2}, + [574] = {.lex_state = 1, .external_lex_state = 3}, + [575] = {.lex_state = 0, .external_lex_state = 2}, + [576] = {.lex_state = 0, .external_lex_state = 2}, + [577] = {.lex_state = 1, .external_lex_state = 3}, + [578] = {.lex_state = 0, .external_lex_state = 2}, + [579] = {.lex_state = 0, .external_lex_state = 2}, + [580] = {.lex_state = 1, .external_lex_state = 14}, + [581] = {.lex_state = 1, .external_lex_state = 3}, + [582] = {.lex_state = 0, .external_lex_state = 2}, + [583] = {.lex_state = 0, .external_lex_state = 2}, + [584] = {.lex_state = 0, .external_lex_state = 2}, + [585] = {.lex_state = 0, .external_lex_state = 2}, + [586] = {.lex_state = 1, .external_lex_state = 14}, + [587] = {.lex_state = 31, .external_lex_state = 19}, + [588] = {.lex_state = 0, .external_lex_state = 2}, + [589] = {.lex_state = 1, .external_lex_state = 3}, + [590] = {.lex_state = 0, .external_lex_state = 2}, + [591] = {.lex_state = 1, .external_lex_state = 3}, + [592] = {.lex_state = 1, .external_lex_state = 3}, + [593] = {.lex_state = 31, .external_lex_state = 3}, + [594] = {.lex_state = 1, .external_lex_state = 14}, + [595] = {.lex_state = 1, .external_lex_state = 3}, + [596] = {.lex_state = 1, .external_lex_state = 3}, + [597] = {.lex_state = 0, .external_lex_state = 2}, + [598] = {.lex_state = 1, .external_lex_state = 3}, + [599] = {.lex_state = 0, .external_lex_state = 2}, + [600] = {.lex_state = 31, .external_lex_state = 3}, + [601] = {.lex_state = 1, .external_lex_state = 3}, + [602] = {.lex_state = 1, .external_lex_state = 3}, + [603] = {.lex_state = 0, .external_lex_state = 2}, + [604] = {.lex_state = 0, .external_lex_state = 2}, + [605] = {.lex_state = 0, .external_lex_state = 2}, + [606] = {.lex_state = 31, .external_lex_state = 2}, + [607] = {.lex_state = 31, .external_lex_state = 2}, + [608] = {.lex_state = 31, .external_lex_state = 2}, + [609] = {.lex_state = 31, .external_lex_state = 2}, + [610] = {.lex_state = 31, .external_lex_state = 2}, + [611] = {.lex_state = 31, .external_lex_state = 2}, + [612] = {.lex_state = 1, .external_lex_state = 3}, + [613] = {.lex_state = 0, .external_lex_state = 2}, + [614] = {.lex_state = 0, .external_lex_state = 2}, + [615] = {.lex_state = 0, .external_lex_state = 2}, + [616] = {.lex_state = 31, .external_lex_state = 2}, + [617] = {.lex_state = 0, .external_lex_state = 2}, + [618] = {.lex_state = 31, .external_lex_state = 3}, + [619] = {.lex_state = 0, .external_lex_state = 2}, + [620] = {.lex_state = 0, .external_lex_state = 2}, + [621] = {.lex_state = 0, .external_lex_state = 2}, + [622] = {.lex_state = 0, .external_lex_state = 10}, + [623] = {.lex_state = 0, .external_lex_state = 2}, + [624] = {.lex_state = 0, .external_lex_state = 2}, + [625] = {.lex_state = 31, .external_lex_state = 2}, + [626] = {.lex_state = 31, .external_lex_state = 2}, + [627] = {.lex_state = 0, .external_lex_state = 2}, + [628] = {.lex_state = 0, .external_lex_state = 3}, + [629] = {.lex_state = 0, .external_lex_state = 2}, + [630] = {.lex_state = 0, .external_lex_state = 2}, + [631] = {.lex_state = 0, .external_lex_state = 2}, + [632] = {.lex_state = 0, .external_lex_state = 3}, + [633] = {.lex_state = 0, .external_lex_state = 2}, + [634] = {.lex_state = 1, .external_lex_state = 2}, + [635] = {.lex_state = 0, .external_lex_state = 3}, + [636] = {.lex_state = 0, .external_lex_state = 2}, + [637] = {.lex_state = 0, .external_lex_state = 2}, + [638] = {.lex_state = 0, .external_lex_state = 2}, + [639] = {.lex_state = 0, .external_lex_state = 2}, + [640] = {.lex_state = 0, .external_lex_state = 2}, + [641] = {.lex_state = 0, .external_lex_state = 2}, + [642] = {.lex_state = 3, .external_lex_state = 2}, + [643] = {.lex_state = 31, .external_lex_state = 3}, + [644] = {.lex_state = 31, .external_lex_state = 3}, + [645] = {.lex_state = 31, .external_lex_state = 3}, + [646] = {.lex_state = 0, .external_lex_state = 3}, + [647] = {.lex_state = 0, .external_lex_state = 3}, + [648] = {.lex_state = 0, .external_lex_state = 2}, + [649] = {.lex_state = 0, .external_lex_state = 2}, + [650] = {.lex_state = 0, .external_lex_state = 2}, + [651] = {.lex_state = 0, .external_lex_state = 2}, + [652] = {.lex_state = 0, .external_lex_state = 2}, + [653] = {.lex_state = 0, .external_lex_state = 2}, + [654] = {.lex_state = 0, .external_lex_state = 2}, + [655] = {.lex_state = 0, .external_lex_state = 2}, + [656] = {.lex_state = 0, .external_lex_state = 2}, + [657] = {.lex_state = 0, .external_lex_state = 2}, + [658] = {.lex_state = 31, .external_lex_state = 2}, + [659] = {.lex_state = 0, .external_lex_state = 3}, + [660] = {.lex_state = 1, .external_lex_state = 2}, + [661] = {.lex_state = 1, .external_lex_state = 2}, + [662] = {.lex_state = 0, .external_lex_state = 2}, + [663] = {.lex_state = 0, .external_lex_state = 2}, + [664] = {.lex_state = 0, .external_lex_state = 2}, + [665] = {.lex_state = 0, .external_lex_state = 2}, + [666] = {.lex_state = 0, .external_lex_state = 2}, + [667] = {.lex_state = 0, .external_lex_state = 2}, + [668] = {.lex_state = 0, .external_lex_state = 2}, + [669] = {.lex_state = 0, .external_lex_state = 2}, + [670] = {.lex_state = 0, .external_lex_state = 2}, + [671] = {.lex_state = 0, .external_lex_state = 3}, + [672] = {.lex_state = 3, .external_lex_state = 2}, + [673] = {.lex_state = 0, .external_lex_state = 2}, + [674] = {.lex_state = 0, .external_lex_state = 2}, + [675] = {.lex_state = 0, .external_lex_state = 2}, + [676] = {.lex_state = 1, .external_lex_state = 2}, + [677] = {.lex_state = 1, .external_lex_state = 2}, + [678] = {.lex_state = 0, .external_lex_state = 2}, + [679] = {.lex_state = 0, .external_lex_state = 2}, + [680] = {.lex_state = 0, .external_lex_state = 2}, + [681] = {.lex_state = 0, .external_lex_state = 3}, + [682] = {.lex_state = 0, .external_lex_state = 2}, + [683] = {.lex_state = 0, .external_lex_state = 2}, + [684] = {.lex_state = 0, .external_lex_state = 2}, + [685] = {.lex_state = 0, .external_lex_state = 2}, + [686] = {.lex_state = 0, .external_lex_state = 2}, + [687] = {.lex_state = 0, .external_lex_state = 2}, + [688] = {.lex_state = 31, .external_lex_state = 2}, + [689] = {.lex_state = 0, .external_lex_state = 2}, + [690] = {.lex_state = 0, .external_lex_state = 2}, + [691] = {.lex_state = 0, .external_lex_state = 2}, + [692] = {.lex_state = 0, .external_lex_state = 3}, + [693] = {.lex_state = 31, .external_lex_state = 2}, + [694] = {.lex_state = 0, .external_lex_state = 2}, + [695] = {.lex_state = 0, .external_lex_state = 2}, + [696] = {.lex_state = 0, .external_lex_state = 2}, + [697] = {.lex_state = 0, .external_lex_state = 2}, + [698] = {.lex_state = 0, .external_lex_state = 2}, + [699] = {.lex_state = 0, .external_lex_state = 2}, + [700] = {.lex_state = 31, .external_lex_state = 2}, + [701] = {.lex_state = 0, .external_lex_state = 2}, + [702] = {.lex_state = 0, .external_lex_state = 2}, + [703] = {.lex_state = 31, .external_lex_state = 2}, + [704] = {.lex_state = 0, .external_lex_state = 2}, + [705] = {.lex_state = 0, .external_lex_state = 2}, + [706] = {.lex_state = 0, .external_lex_state = 2}, + [707] = {.lex_state = 31, .external_lex_state = 2}, + [708] = {.lex_state = 0, .external_lex_state = 2}, + [709] = {.lex_state = 0, .external_lex_state = 2}, + [710] = {.lex_state = 0, .external_lex_state = 2}, + [711] = {.lex_state = 0, .external_lex_state = 2}, + [712] = {.lex_state = 0, .external_lex_state = 2}, + [713] = {.lex_state = 0, .external_lex_state = 2}, + [714] = {.lex_state = 0, .external_lex_state = 2}, + [715] = {.lex_state = 0, .external_lex_state = 2}, + [716] = {.lex_state = 0, .external_lex_state = 2}, + [717] = {.lex_state = 0, .external_lex_state = 2}, + [718] = {.lex_state = 0, .external_lex_state = 2}, + [719] = {.lex_state = 0, .external_lex_state = 2}, + [720] = {.lex_state = 0, .external_lex_state = 2}, + [721] = {.lex_state = 0, .external_lex_state = 2}, + [722] = {.lex_state = 0, .external_lex_state = 2}, + [723] = {.lex_state = 0, .external_lex_state = 2}, + [724] = {.lex_state = 0, .external_lex_state = 2}, + [725] = {.lex_state = 0, .external_lex_state = 2}, + [726] = {.lex_state = 0, .external_lex_state = 2}, + [727] = {.lex_state = 0, .external_lex_state = 2}, + [728] = {.lex_state = 0, .external_lex_state = 2}, + [729] = {.lex_state = 0, .external_lex_state = 2}, + [730] = {.lex_state = 0, .external_lex_state = 2}, + [731] = {.lex_state = 0, .external_lex_state = 2}, + [732] = {.lex_state = 0, .external_lex_state = 3}, + [733] = {.lex_state = 0, .external_lex_state = 2}, + [734] = {.lex_state = 0, .external_lex_state = 2}, + [735] = {.lex_state = 31, .external_lex_state = 2}, + [736] = {.lex_state = 0, .external_lex_state = 2}, + [737] = {.lex_state = 0, .external_lex_state = 2}, + [738] = {.lex_state = 0, .external_lex_state = 2}, + [739] = {.lex_state = 0, .external_lex_state = 2}, + [740] = {.lex_state = 31, .external_lex_state = 2}, + [741] = {.lex_state = 0, .external_lex_state = 2}, + [742] = {.lex_state = 0, .external_lex_state = 2}, + [743] = {.lex_state = 0, .external_lex_state = 2}, + [744] = {.lex_state = 0, .external_lex_state = 3}, + [745] = {.lex_state = 0, .external_lex_state = 2}, + [746] = {.lex_state = 0, .external_lex_state = 2}, + [747] = {.lex_state = 0, .external_lex_state = 2}, + [748] = {.lex_state = 31, .external_lex_state = 2}, + [749] = {.lex_state = 0, .external_lex_state = 2}, + [750] = {.lex_state = 0, .external_lex_state = 20}, + [751] = {.lex_state = 0, .external_lex_state = 2}, + [752] = {.lex_state = 31, .external_lex_state = 2}, + [753] = {.lex_state = 0, .external_lex_state = 2}, + [754] = {.lex_state = 0, .external_lex_state = 20}, + [755] = {.lex_state = 0, .external_lex_state = 2}, + [756] = {.lex_state = 0, .external_lex_state = 2}, + [757] = {.lex_state = 0, .external_lex_state = 2}, + [758] = {.lex_state = 0, .external_lex_state = 3}, + [759] = {.lex_state = 0, .external_lex_state = 2}, + [760] = {.lex_state = 0, .external_lex_state = 2}, + [761] = {.lex_state = 0, .external_lex_state = 2}, + [762] = {.lex_state = 0, .external_lex_state = 2}, + [763] = {.lex_state = 0, .external_lex_state = 20}, + [764] = {.lex_state = 0, .external_lex_state = 20}, + [765] = {.lex_state = 0, .external_lex_state = 2}, + [766] = {.lex_state = 0, .external_lex_state = 2}, + [767] = {.lex_state = 0, .external_lex_state = 2}, + [768] = {.lex_state = 0, .external_lex_state = 2}, + [769] = {.lex_state = 0, .external_lex_state = 2}, + [770] = {.lex_state = 0, .external_lex_state = 2}, + [771] = {.lex_state = 0, .external_lex_state = 2}, + [772] = {.lex_state = 0, .external_lex_state = 2}, + [773] = {.lex_state = 0, .external_lex_state = 2}, + [774] = {.lex_state = 0, .external_lex_state = 2}, + [775] = {.lex_state = 0, .external_lex_state = 2}, + [776] = {.lex_state = 0, .external_lex_state = 2}, + [777] = {.lex_state = 0, .external_lex_state = 2}, + [778] = {.lex_state = 0, .external_lex_state = 3}, + [779] = {.lex_state = 0, .external_lex_state = 2}, + [780] = {.lex_state = 0, .external_lex_state = 20}, + [781] = {.lex_state = 0, .external_lex_state = 2}, + [782] = {.lex_state = 0, .external_lex_state = 20}, + [783] = {.lex_state = 0, .external_lex_state = 2}, + [784] = {.lex_state = 0, .external_lex_state = 2}, + [785] = {.lex_state = 0, .external_lex_state = 2}, + [786] = {.lex_state = 0, .external_lex_state = 2}, + [787] = {.lex_state = 0, .external_lex_state = 2}, + [788] = {.lex_state = 0, .external_lex_state = 2}, + [789] = {.lex_state = 0, .external_lex_state = 2}, + [790] = {.lex_state = 0, .external_lex_state = 3}, + [791] = {.lex_state = 0, .external_lex_state = 2}, + [792] = {.lex_state = 0, .external_lex_state = 20}, + [793] = {.lex_state = 0, .external_lex_state = 2}, + [794] = {.lex_state = 0, .external_lex_state = 2}, + [795] = {.lex_state = 0, .external_lex_state = 20}, + [796] = {.lex_state = 0, .external_lex_state = 2}, + [797] = {.lex_state = 0, .external_lex_state = 2}, + [798] = {.lex_state = 0, .external_lex_state = 2}, + [799] = {.lex_state = 0, .external_lex_state = 2}, + [800] = {.lex_state = 0, .external_lex_state = 3}, + [801] = {.lex_state = 0, .external_lex_state = 2}, + [802] = {.lex_state = 0, .external_lex_state = 20}, + [803] = {.lex_state = 31, .external_lex_state = 2}, + [804] = {.lex_state = 0, .external_lex_state = 2}, + [805] = {.lex_state = 0, .external_lex_state = 2}, + [806] = {.lex_state = 0, .external_lex_state = 2}, + [807] = {.lex_state = 0, .external_lex_state = 2}, + [808] = {.lex_state = 0, .external_lex_state = 2}, + [809] = {.lex_state = 0, .external_lex_state = 2}, + [810] = {.lex_state = 0, .external_lex_state = 3}, + [811] = {.lex_state = 0, .external_lex_state = 2}, + [812] = {.lex_state = 0, .external_lex_state = 20}, + [813] = {.lex_state = 0, .external_lex_state = 2}, + [814] = {.lex_state = 0, .external_lex_state = 2}, + [815] = {.lex_state = 0, .external_lex_state = 2}, + [816] = {.lex_state = 0, .external_lex_state = 2}, + [817] = {.lex_state = 0, .external_lex_state = 2}, + [818] = {.lex_state = 0, .external_lex_state = 2}, + [819] = {.lex_state = 0, .external_lex_state = 2}, + [820] = {.lex_state = 0, .external_lex_state = 3}, + [821] = {.lex_state = 0, .external_lex_state = 2}, + [822] = {.lex_state = 0, .external_lex_state = 2}, + [823] = {.lex_state = 0, .external_lex_state = 2}, + [824] = {.lex_state = 0, .external_lex_state = 2}, + [825] = {.lex_state = 0, .external_lex_state = 2}, + [826] = {.lex_state = 0, .external_lex_state = 2}, + [827] = {.lex_state = 0, .external_lex_state = 3}, + [828] = {.lex_state = 0, .external_lex_state = 2}, + [829] = {.lex_state = 0, .external_lex_state = 20}, + [830] = {.lex_state = 0, .external_lex_state = 2}, + [831] = {.lex_state = 0, .external_lex_state = 2}, + [832] = {.lex_state = 0, .external_lex_state = 2}, + [833] = {.lex_state = 0, .external_lex_state = 2}, + [834] = {.lex_state = 0, .external_lex_state = 3}, + [835] = {.lex_state = 0, .external_lex_state = 2}, + [836] = {.lex_state = 0, .external_lex_state = 20}, + [837] = {.lex_state = 0, .external_lex_state = 2}, + [838] = {.lex_state = 0, .external_lex_state = 2}, + [839] = {.lex_state = 0, .external_lex_state = 2}, + [840] = {.lex_state = 0, .external_lex_state = 2}, + [841] = {.lex_state = 0, .external_lex_state = 3}, + [842] = {.lex_state = 0, .external_lex_state = 2}, + [843] = {.lex_state = 0, .external_lex_state = 20}, + [844] = {.lex_state = 0, .external_lex_state = 2}, + [845] = {.lex_state = 0, .external_lex_state = 2}, + [846] = {.lex_state = 0, .external_lex_state = 2}, + [847] = {.lex_state = 0, .external_lex_state = 2}, + [848] = {.lex_state = 0, .external_lex_state = 3}, + [849] = {.lex_state = 0, .external_lex_state = 2}, + [850] = {.lex_state = 0, .external_lex_state = 2}, + [851] = {.lex_state = 0, .external_lex_state = 2}, + [852] = {.lex_state = 0, .external_lex_state = 2}, + [853] = {.lex_state = 31, .external_lex_state = 2}, + [854] = {.lex_state = 31, .external_lex_state = 2}, + [855] = {.lex_state = 31, .external_lex_state = 2}, + [856] = {.lex_state = 0, .external_lex_state = 2}, + [857] = {.lex_state = 0, .external_lex_state = 2}, + [858] = {.lex_state = 0, .external_lex_state = 2}, + [859] = {.lex_state = 0, .external_lex_state = 2}, + [860] = {.lex_state = 31, .external_lex_state = 2}, + [861] = {.lex_state = 31, .external_lex_state = 2}, + [862] = {.lex_state = 31, .external_lex_state = 2}, + [863] = {.lex_state = 0, .external_lex_state = 2}, + [864] = {.lex_state = 0, .external_lex_state = 2}, + [865] = {.lex_state = 0, .external_lex_state = 20}, + [866] = {.lex_state = 0, .external_lex_state = 2}, + [867] = {.lex_state = 31, .external_lex_state = 2}, + [868] = {.lex_state = 0, .external_lex_state = 2}, + [869] = {.lex_state = 31, .external_lex_state = 2}, + [870] = {.lex_state = 0, .external_lex_state = 2}, + [871] = {.lex_state = 0, .external_lex_state = 20}, + [872] = {.lex_state = 0, .external_lex_state = 2}, + [873] = {.lex_state = 0, .external_lex_state = 2}, + [874] = {.lex_state = 0, .external_lex_state = 2}, + [875] = {.lex_state = 0, .external_lex_state = 2}, + [876] = {.lex_state = 0, .external_lex_state = 2}, + [877] = {.lex_state = 0, .external_lex_state = 2}, + [878] = {.lex_state = 0, .external_lex_state = 2}, + [879] = {.lex_state = 0, .external_lex_state = 2}, + [880] = {.lex_state = 0, .external_lex_state = 2}, + [881] = {.lex_state = 0, .external_lex_state = 2}, + [882] = {.lex_state = 0, .external_lex_state = 2}, + [883] = {.lex_state = 0, .external_lex_state = 2}, + [884] = {.lex_state = 0, .external_lex_state = 2}, + [885] = {.lex_state = 0, .external_lex_state = 2}, + [886] = {.lex_state = 0, .external_lex_state = 2}, + [887] = {.lex_state = 0, .external_lex_state = 2}, + [888] = {.lex_state = 0, .external_lex_state = 2}, + [889] = {.lex_state = 0, .external_lex_state = 2}, + [890] = {.lex_state = 0, .external_lex_state = 2}, + [891] = {.lex_state = 0, .external_lex_state = 2}, + [892] = {.lex_state = 0, .external_lex_state = 20}, + [893] = {.lex_state = 0, .external_lex_state = 2}, + [894] = {.lex_state = 0, .external_lex_state = 20}, + [895] = {.lex_state = 0, .external_lex_state = 2}, +}; + +static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { + [0] = { + [ts_builtin_sym_end] = ACTIONS(1), + [sym_ident_pattern_token] = ACTIONS(1), + [anon_sym_SEMI] = ACTIONS(1), + [anon_sym_true] = ACTIONS(1), + [anon_sym_false] = ACTIONS(1), + [aux_sym_decimal_int_literal_token1] = ACTIONS(1), + [aux_sym_decimal_int_literal_token2] = ACTIONS(1), + [sym_hex_int_literal] = ACTIONS(1), + [aux_sym_decimal_float_literal_token1] = ACTIONS(1), + [aux_sym_decimal_float_literal_token2] = ACTIONS(1), + [aux_sym_decimal_float_literal_token3] = ACTIONS(1), + [aux_sym_decimal_float_literal_token4] = ACTIONS(1), + [aux_sym_decimal_float_literal_token5] = ACTIONS(1), + [aux_sym_hex_float_literal_token1] = ACTIONS(1), + [aux_sym_hex_float_literal_token2] = ACTIONS(1), + [aux_sym_hex_float_literal_token3] = ACTIONS(1), + [anon_sym_diagnostic] = ACTIONS(1), + [anon_sym_DOT] = ACTIONS(1), + [anon_sym_COMMA] = ACTIONS(1), + [anon_sym_AT] = ACTIONS(1), + [anon_sym_align] = ACTIONS(1), + [anon_sym_LPAREN] = ACTIONS(1), + [anon_sym_RPAREN] = ACTIONS(1), + [anon_sym_binding] = ACTIONS(1), + [anon_sym_blend_src] = ACTIONS(1), + [anon_sym_builtin] = ACTIONS(1), + [anon_sym_const] = ACTIONS(1), + [anon_sym_group] = ACTIONS(1), + [anon_sym_id] = ACTIONS(1), + [anon_sym_interpolate] = ACTIONS(1), + [anon_sym_invariant] = ACTIONS(1), + [anon_sym_location] = ACTIONS(1), + [anon_sym_must_use] = ACTIONS(1), + [anon_sym_size] = ACTIONS(1), + [anon_sym_workgroup_size] = ACTIONS(1), + [anon_sym_vertex] = ACTIONS(1), + [anon_sym_fragment] = ACTIONS(1), + [anon_sym_compute] = ACTIONS(1), + [anon_sym_struct] = ACTIONS(1), + [anon_sym_LBRACE] = ACTIONS(1), + [anon_sym_RBRACE] = ACTIONS(1), + [anon_sym_COLON] = ACTIONS(1), + [anon_sym_alias] = ACTIONS(1), + [anon_sym_EQ] = ACTIONS(1), + [anon_sym_let] = ACTIONS(1), + [anon_sym_var] = ACTIONS(1), + [anon_sym_override] = ACTIONS(1), + [anon_sym_LBRACK] = ACTIONS(1), + [anon_sym_RBRACK] = ACTIONS(1), + [anon_sym_DASH] = ACTIONS(1), + [anon_sym_BANG] = ACTIONS(1), + [anon_sym_TILDE] = ACTIONS(1), + [anon_sym_STAR] = ACTIONS(1), + [anon_sym_AMP] = ACTIONS(1), + [anon_sym_SLASH] = ACTIONS(1), + [anon_sym_PERCENT] = ACTIONS(1), + [anon_sym_PLUS] = ACTIONS(1), + [anon_sym_EQ_EQ] = ACTIONS(1), + [anon_sym_BANG_EQ] = ACTIONS(1), + [anon_sym_AMP_AMP] = ACTIONS(1), + [anon_sym_PIPE_PIPE] = ACTIONS(1), + [anon_sym_PIPE] = ACTIONS(1), + [anon_sym_CARET] = ACTIONS(1), + [anon_sym__] = ACTIONS(1), + [anon_sym_PLUS_EQ] = ACTIONS(1), + [anon_sym_DASH_EQ] = ACTIONS(1), + [anon_sym_STAR_EQ] = ACTIONS(1), + [anon_sym_SLASH_EQ] = ACTIONS(1), + [anon_sym_PERCENT_EQ] = ACTIONS(1), + [anon_sym_AMP_EQ] = ACTIONS(1), + [anon_sym_PIPE_EQ] = ACTIONS(1), + [anon_sym_CARET_EQ] = ACTIONS(1), + [anon_sym_PLUS_PLUS] = ACTIONS(1), + [anon_sym_if] = ACTIONS(1), + [anon_sym_else] = ACTIONS(1), + [anon_sym_switch] = ACTIONS(1), + [anon_sym_case] = ACTIONS(1), + [anon_sym_default] = ACTIONS(1), + [anon_sym_loop] = ACTIONS(1), + [anon_sym_for] = ACTIONS(1), + [anon_sym_while] = ACTIONS(1), + [anon_sym_break] = ACTIONS(1), + [sym_continue_statement] = ACTIONS(1), + [anon_sym_continuing] = ACTIONS(1), + [anon_sym_return] = ACTIONS(1), + [anon_sym_const_assert] = ACTIONS(1), + [anon_sym_discard] = ACTIONS(1), + [anon_sym_fn] = ACTIONS(1), + [anon_sym_DASH_GT] = ACTIONS(1), + [anon_sym_enable] = ACTIONS(1), + [anon_sym_requires] = ACTIONS(1), + [aux_sym_swizzle_name_token1] = ACTIONS(1), + [aux_sym_swizzle_name_token2] = ACTIONS(1), + [aux_sym_swizzle_name_token3] = ACTIONS(1), + [aux_sym_swizzle_name_token4] = ACTIONS(1), + [aux_sym_swizzle_name_token5] = ACTIONS(1), + [aux_sym_swizzle_name_token6] = ACTIONS(1), + [aux_sym_swizzle_name_token7] = ACTIONS(1), + [aux_sym_swizzle_name_token8] = ACTIONS(1), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + [sym__disambiguate_template] = ACTIONS(1), + [sym__template_args_start] = ACTIONS(1), + [sym__template_args_end] = ACTIONS(1), + [sym__less_than] = ACTIONS(1), + [sym__less_than_equal] = ACTIONS(1), + [sym__shift_left] = ACTIONS(1), + [sym__shift_left_assign] = ACTIONS(1), + [sym__greater_than] = ACTIONS(1), + [sym__greater_than_equal] = ACTIONS(1), + [sym__shift_right] = ACTIONS(1), + [sym__shift_right_assign] = ACTIONS(1), + [sym__error_sentinel] = ACTIONS(1), + }, + [1] = { + [sym_translation_unit] = STATE(887), + [sym_global_directive] = STATE(55), + [sym_diagnostic_directive] = STATE(463), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(177), + [sym_struct_decl] = STATE(105), + [sym_type_alias_decl] = STATE(886), + [sym_variable_decl] = STATE(740), + [sym_global_variable_decl] = STATE(886), + [sym_global_value_decl] = STATE(886), + [sym_const_assert_statement] = STATE(886), + [sym_function_decl] = STATE(105), + [sym_function_header] = STATE(254), + [sym_enable_directive] = STATE(463), + [sym_requires_directive] = STATE(463), + [aux_sym_translation_unit_repeat1] = STATE(55), + [aux_sym_translation_unit_repeat2] = STATE(105), + [aux_sym_struct_member_repeat1] = STATE(177), + [ts_builtin_sym_end] = ACTIONS(5), + [anon_sym_SEMI] = ACTIONS(7), + [anon_sym_diagnostic] = ACTIONS(9), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_const] = ACTIONS(13), + [anon_sym_struct] = ACTIONS(15), + [anon_sym_alias] = ACTIONS(17), + [anon_sym_var] = ACTIONS(19), + [anon_sym_override] = ACTIONS(21), + [anon_sym_const_assert] = ACTIONS(23), + [anon_sym_fn] = ACTIONS(25), + [anon_sym_enable] = ACTIONS(27), + [anon_sym_requires] = ACTIONS(29), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [2] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(882), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(41), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [3] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(786), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(4), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(4), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(69), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [4] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(815), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(71), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [5] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(815), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(6), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(6), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(71), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [6] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(844), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(73), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [7] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(844), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(2), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(2), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(73), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [8] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(75), + [anon_sym_SEMI] = ACTIONS(78), + [anon_sym_AT] = ACTIONS(81), + [anon_sym_LPAREN] = ACTIONS(84), + [anon_sym_const] = ACTIONS(87), + [anon_sym_LBRACE] = ACTIONS(90), + [anon_sym_RBRACE] = ACTIONS(93), + [anon_sym_let] = ACTIONS(87), + [anon_sym_var] = ACTIONS(95), + [anon_sym_STAR] = ACTIONS(98), + [anon_sym_AMP] = ACTIONS(98), + [anon_sym__] = ACTIONS(101), + [anon_sym_if] = ACTIONS(104), + [anon_sym_switch] = ACTIONS(107), + [anon_sym_loop] = ACTIONS(110), + [anon_sym_for] = ACTIONS(113), + [anon_sym_while] = ACTIONS(116), + [anon_sym_break] = ACTIONS(119), + [sym_continue_statement] = ACTIONS(122), + [anon_sym_continuing] = ACTIONS(125), + [anon_sym_return] = ACTIONS(127), + [anon_sym_const_assert] = ACTIONS(130), + [anon_sym_discard] = ACTIONS(122), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [9] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_break_if_statement] = STATE(839), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(12), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(12), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(133), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(135), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [10] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_break_if_statement] = STATE(889), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(137), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(135), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [11] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_break_if_statement] = STATE(868), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(10), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(10), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(139), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(135), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [12] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_break_if_statement] = STATE(868), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(139), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(135), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [13] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(14), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(14), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(141), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [14] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(143), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [15] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(16), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(16), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(143), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [16] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(145), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, +}; + +static const uint16_t ts_small_parse_table[] = { + [0] = 35, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(167), 1, + anon_sym_default, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(627), 1, + sym_case_selector, + STATE(633), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(161), 3, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [125] = 35, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(167), 1, + anon_sym_default, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(627), 1, + sym_case_selector, + STATE(633), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(169), 3, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [250] = 35, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(167), 1, + anon_sym_default, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(208), 1, + sym_case_selectors, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(623), 1, + sym_case_selector, + STATE(633), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [373] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(820), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [493] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(167), 1, + anon_sym_default, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(627), 1, + sym_case_selector, + STATE(633), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [613] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(834), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [733] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(758), 1, + sym_template_arg_comma_list, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [853] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(189), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(762), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [973] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(191), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(826), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1093] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(193), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(819), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1213] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(195), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(833), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1333] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(827), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1453] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(197), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(809), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1573] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(199), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(840), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1693] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + ACTIONS(201), 1, + sym__template_args_end, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(692), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1813] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(203), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(799), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1933] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(205), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(847), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2053] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(810), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2173] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(841), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2293] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(778), 1, + sym_template_arg_comma_list, + STATE(782), 1, + sym_ident, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2413] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(800), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2533] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(207), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(789), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2653] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + ACTIONS(209), 1, + sym__template_args_end, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(692), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2773] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(211), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(777), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2893] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(790), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3013] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(848), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3133] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(213), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(727), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3250] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(215), 1, + anon_sym_SEMI, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(817), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3367] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(692), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3484] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(217), 1, + anon_sym_SEMI, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(857), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3601] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(219), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(696), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3718] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(221), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(697), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3835] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(223), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(696), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3952] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(225), 1, + anon_sym_SEMI, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(751), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4069] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(849), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4183] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(811), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4297] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(784), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4411] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(761), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4525] = 22, + ACTIONS(9), 1, + anon_sym_diagnostic, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(13), 1, + anon_sym_const, + ACTIONS(15), 1, + anon_sym_struct, + ACTIONS(17), 1, + anon_sym_alias, + ACTIONS(19), 1, + anon_sym_var, + ACTIONS(21), 1, + anon_sym_override, + ACTIONS(23), 1, + anon_sym_const_assert, + ACTIONS(25), 1, + anon_sym_fn, + ACTIONS(27), 1, + anon_sym_enable, + ACTIONS(29), 1, + anon_sym_requires, + ACTIONS(227), 1, + ts_builtin_sym_end, + ACTIONS(229), 1, + anon_sym_SEMI, + STATE(254), 1, + sym_function_header, + STATE(740), 1, + sym_variable_decl, + STATE(177), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + STATE(327), 2, + sym_global_directive, + aux_sym_translation_unit_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(102), 3, + sym_struct_decl, + sym_function_decl, + aux_sym_translation_unit_repeat2, + STATE(463), 3, + sym_diagnostic_directive, + sym_enable_directive, + sym_requires_directive, + STATE(886), 4, + sym_type_alias_decl, + sym_global_variable_decl, + sym_global_value_decl, + sym_const_assert_statement, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [4619] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(838), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4733] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(248), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4847] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(816), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4961] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(842), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5075] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(845), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5189] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(808), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5303] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(805), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5417] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(859), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5531] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(255), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5645] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(264), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5759] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(793), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5873] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(835), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5987] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(708), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6101] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(851), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6215] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + STATE(885), 1, + sym_expression, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6329] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(745), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6443] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(746), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6557] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(818), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6671] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(696), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6785] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(737), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6899] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(779), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7013] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(794), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7127] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(767), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7241] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(801), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7355] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(725), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7469] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(804), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7583] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(791), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7697] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(814), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7811] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(806), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7925] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(724), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8039] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(241), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8153] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(239), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8267] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(238), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8381] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(831), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8495] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(720), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8609] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(757), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8723] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(719), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8837] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(821), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8951] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(716), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9065] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(824), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9179] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(828), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9293] = 25, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(180), 1, + sym_singular_expression, + STATE(240), 1, + sym_unary_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(439), 1, + sym_shift_expression, + STATE(605), 1, + sym_relational_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9386] = 25, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(180), 1, + sym_singular_expression, + STATE(240), 1, + sym_unary_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(604), 1, + sym_relational_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9479] = 25, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(311), 1, + sym_singular_expression, + STATE(369), 1, + sym_unary_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(647), 1, + sym_relational_expression, + STATE(782), 1, + sym_ident, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9572] = 25, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(311), 1, + sym_singular_expression, + STATE(369), 1, + sym_unary_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(594), 1, + sym_shift_expression, + STATE(646), 1, + sym_relational_expression, + STATE(782), 1, + sym_ident, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9665] = 17, + ACTIONS(231), 1, + ts_builtin_sym_end, + ACTIONS(233), 1, + anon_sym_SEMI, + ACTIONS(236), 1, + anon_sym_AT, + ACTIONS(239), 1, + anon_sym_const, + ACTIONS(242), 1, + anon_sym_struct, + ACTIONS(245), 1, + anon_sym_alias, + ACTIONS(248), 1, + anon_sym_var, + ACTIONS(251), 1, + anon_sym_override, + ACTIONS(254), 1, + anon_sym_const_assert, + ACTIONS(257), 1, + anon_sym_fn, + STATE(254), 1, + sym_function_header, + STATE(740), 1, + sym_variable_decl, + STATE(177), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(101), 3, + sym_struct_decl, + sym_function_decl, + aux_sym_translation_unit_repeat2, + STATE(886), 4, + sym_type_alias_decl, + sym_global_variable_decl, + sym_global_value_decl, + sym_const_assert_statement, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [9741] = 17, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(13), 1, + anon_sym_const, + ACTIONS(15), 1, + anon_sym_struct, + ACTIONS(17), 1, + anon_sym_alias, + ACTIONS(19), 1, + anon_sym_var, + ACTIONS(21), 1, + anon_sym_override, + ACTIONS(23), 1, + anon_sym_const_assert, + ACTIONS(25), 1, + anon_sym_fn, + ACTIONS(260), 1, + ts_builtin_sym_end, + ACTIONS(262), 1, + anon_sym_SEMI, + STATE(254), 1, + sym_function_header, + STATE(740), 1, + sym_variable_decl, + STATE(177), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(101), 3, + sym_struct_decl, + sym_function_decl, + aux_sym_translation_unit_repeat2, + STATE(886), 4, + sym_type_alias_decl, + sym_global_variable_decl, + sym_global_value_decl, + sym_const_assert_statement, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [9817] = 24, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(268), 1, + sym_hex_int_literal, + ACTIONS(272), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(276), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(278), 1, + anon_sym_LPAREN, + STATE(297), 1, + sym_template_elaborated_ident, + STATE(315), 1, + sym_primary_expression, + STATE(346), 1, + sym_decimal_int_literal, + STATE(358), 1, + sym_call_phrase, + STATE(403), 1, + sym_singular_expression, + STATE(428), 1, + sym_unary_expression, + STATE(447), 1, + sym_multiplicative_expression, + STATE(565), 1, + sym_additive_expression, + STATE(597), 1, + sym_shift_expression, + STATE(802), 1, + sym_ident, + ACTIONS(264), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(266), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(274), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(350), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(349), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(351), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(270), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(280), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9907] = 24, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(286), 1, + sym_hex_int_literal, + ACTIONS(290), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(294), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(296), 1, + anon_sym_LPAREN, + STATE(425), 1, + sym_template_elaborated_ident, + STATE(457), 1, + sym_primary_expression, + STATE(461), 1, + sym_decimal_int_literal, + STATE(465), 1, + sym_call_phrase, + STATE(547), 1, + sym_unary_expression, + STATE(561), 1, + sym_singular_expression, + STATE(589), 1, + sym_multiplicative_expression, + STATE(612), 1, + sym_additive_expression, + STATE(635), 1, + sym_shift_expression, + STATE(750), 1, + sym_ident, + ACTIONS(282), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(284), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(292), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(460), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(464), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(481), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(288), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(298), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9997] = 17, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(13), 1, + anon_sym_const, + ACTIONS(15), 1, + anon_sym_struct, + ACTIONS(17), 1, + anon_sym_alias, + ACTIONS(19), 1, + anon_sym_var, + ACTIONS(21), 1, + anon_sym_override, + ACTIONS(23), 1, + anon_sym_const_assert, + ACTIONS(25), 1, + anon_sym_fn, + ACTIONS(227), 1, + ts_builtin_sym_end, + ACTIONS(262), 1, + anon_sym_SEMI, + STATE(254), 1, + sym_function_header, + STATE(740), 1, + sym_variable_decl, + STATE(177), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(101), 3, + sym_struct_decl, + sym_function_decl, + aux_sym_translation_unit_repeat2, + STATE(886), 4, + sym_type_alias_decl, + sym_global_variable_decl, + sym_global_value_decl, + sym_const_assert_statement, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [10073] = 24, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(268), 1, + sym_hex_int_literal, + ACTIONS(272), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(276), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(278), 1, + anon_sym_LPAREN, + STATE(297), 1, + sym_template_elaborated_ident, + STATE(315), 1, + sym_primary_expression, + STATE(346), 1, + sym_decimal_int_literal, + STATE(358), 1, + sym_call_phrase, + STATE(403), 1, + sym_singular_expression, + STATE(413), 1, + sym_unary_expression, + STATE(426), 1, + sym_multiplicative_expression, + STATE(503), 1, + sym_additive_expression, + STATE(597), 1, + sym_shift_expression, + STATE(802), 1, + sym_ident, + ACTIONS(264), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(266), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(274), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(350), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(349), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(351), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(270), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(280), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10163] = 24, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(286), 1, + sym_hex_int_literal, + ACTIONS(290), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(294), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(296), 1, + anon_sym_LPAREN, + STATE(425), 1, + sym_template_elaborated_ident, + STATE(457), 1, + sym_primary_expression, + STATE(461), 1, + sym_decimal_int_literal, + STATE(465), 1, + sym_call_phrase, + STATE(561), 1, + sym_singular_expression, + STATE(587), 1, + sym_unary_expression, + STATE(600), 1, + sym_multiplicative_expression, + STATE(618), 1, + sym_additive_expression, + STATE(635), 1, + sym_shift_expression, + STATE(750), 1, + sym_ident, + ACTIONS(282), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(284), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(292), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(460), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(464), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(481), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(288), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(298), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10253] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(450), 1, + sym_multiplicative_expression, + STATE(454), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10337] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(322), 1, + sym_hex_int_literal, + ACTIONS(326), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(330), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(332), 1, + anon_sym_LPAREN, + STATE(466), 1, + sym_template_elaborated_ident, + STATE(504), 1, + sym_primary_expression, + STATE(548), 1, + sym_decimal_int_literal, + STATE(559), 1, + sym_call_phrase, + STATE(581), 1, + sym_multiplicative_expression, + STATE(591), 1, + sym_unary_expression, + STATE(602), 1, + sym_singular_expression, + STATE(843), 1, + sym_ident, + ACTIONS(318), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(320), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(328), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(555), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(552), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(556), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(324), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(334), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10421] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(340), 1, + sym_hex_int_literal, + ACTIONS(344), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(348), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(350), 1, + anon_sym_LPAREN, + STATE(333), 1, + sym_template_elaborated_ident, + STATE(381), 1, + sym_primary_expression, + STATE(390), 1, + sym_call_phrase, + STATE(399), 1, + sym_decimal_int_literal, + STATE(421), 1, + sym_multiplicative_expression, + STATE(443), 1, + sym_singular_expression, + STATE(454), 1, + sym_unary_expression, + STATE(836), 1, + sym_ident, + ACTIONS(336), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(338), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(346), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(393), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(391), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(394), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(342), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(352), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10505] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(591), 1, + sym_unary_expression, + STATE(593), 1, + sym_multiplicative_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10589] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(376), 1, + sym_hex_int_literal, + ACTIONS(380), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(384), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(386), 1, + anon_sym_LPAREN, + STATE(321), 1, + sym_template_elaborated_ident, + STATE(334), 1, + sym_primary_expression, + STATE(371), 1, + sym_call_phrase, + STATE(384), 1, + sym_decimal_int_literal, + STATE(388), 1, + sym_multiplicative_expression, + STATE(420), 1, + sym_unary_expression, + STATE(434), 1, + sym_singular_expression, + STATE(812), 1, + sym_ident, + ACTIONS(372), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(374), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(382), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(374), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(361), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(372), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(378), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(388), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10673] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(394), 1, + sym_hex_int_literal, + ACTIONS(398), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(402), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(404), 1, + anon_sym_LPAREN, + STATE(188), 1, + sym_template_elaborated_ident, + STATE(213), 1, + sym_primary_expression, + STATE(270), 1, + sym_call_phrase, + STATE(280), 1, + sym_decimal_int_literal, + STATE(283), 1, + sym_multiplicative_expression, + STATE(301), 1, + sym_unary_expression, + STATE(309), 1, + sym_singular_expression, + STATE(792), 1, + sym_ident, + ACTIONS(390), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(392), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(400), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(274), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(273), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(276), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(396), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(406), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10757] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(340), 1, + sym_hex_int_literal, + ACTIONS(344), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(348), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(350), 1, + anon_sym_LPAREN, + STATE(333), 1, + sym_template_elaborated_ident, + STATE(381), 1, + sym_primary_expression, + STATE(390), 1, + sym_call_phrase, + STATE(399), 1, + sym_decimal_int_literal, + STATE(436), 1, + sym_unary_expression, + STATE(443), 1, + sym_singular_expression, + STATE(836), 1, + sym_ident, + ACTIONS(336), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(338), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(346), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(393), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(391), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(394), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(342), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(352), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10838] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(286), 1, + sym_hex_int_literal, + ACTIONS(290), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(294), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(296), 1, + anon_sym_LPAREN, + STATE(425), 1, + sym_template_elaborated_ident, + STATE(457), 1, + sym_primary_expression, + STATE(461), 1, + sym_decimal_int_literal, + STATE(465), 1, + sym_call_phrase, + STATE(506), 1, + sym_unary_expression, + STATE(561), 1, + sym_singular_expression, + STATE(750), 1, + sym_ident, + ACTIONS(282), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(284), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(292), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(460), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(464), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(481), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(288), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(298), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10919] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(268), 1, + sym_hex_int_literal, + ACTIONS(272), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(276), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(278), 1, + anon_sym_LPAREN, + STATE(297), 1, + sym_template_elaborated_ident, + STATE(315), 1, + sym_primary_expression, + STATE(346), 1, + sym_decimal_int_literal, + STATE(358), 1, + sym_call_phrase, + STATE(403), 1, + sym_singular_expression, + STATE(408), 1, + sym_unary_expression, + STATE(802), 1, + sym_ident, + ACTIONS(264), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(266), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(274), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(350), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(349), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(351), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(270), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(280), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11000] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(562), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11081] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(322), 1, + sym_hex_int_literal, + ACTIONS(326), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(330), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(332), 1, + anon_sym_LPAREN, + STATE(466), 1, + sym_template_elaborated_ident, + STATE(504), 1, + sym_primary_expression, + STATE(548), 1, + sym_decimal_int_literal, + STATE(559), 1, + sym_call_phrase, + STATE(602), 1, + sym_singular_expression, + STATE(632), 1, + sym_unary_expression, + STATE(843), 1, + sym_ident, + ACTIONS(318), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(320), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(328), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(555), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(552), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(556), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(324), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(334), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11162] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(592), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11243] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(632), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11324] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(415), 1, + sym_unary_expression, + STATE(416), 1, + sym_singular_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11405] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(376), 1, + sym_hex_int_literal, + ACTIONS(380), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(384), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(386), 1, + anon_sym_LPAREN, + STATE(321), 1, + sym_template_elaborated_ident, + STATE(334), 1, + sym_primary_expression, + STATE(371), 1, + sym_call_phrase, + STATE(384), 1, + sym_decimal_int_literal, + STATE(429), 1, + sym_unary_expression, + STATE(434), 1, + sym_singular_expression, + STATE(812), 1, + sym_ident, + ACTIONS(372), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(374), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(382), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(374), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(361), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(372), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(378), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(388), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11486] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(340), 1, + sym_hex_int_literal, + ACTIONS(344), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(348), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(350), 1, + anon_sym_LPAREN, + STATE(333), 1, + sym_template_elaborated_ident, + STATE(381), 1, + sym_primary_expression, + STATE(390), 1, + sym_call_phrase, + STATE(399), 1, + sym_decimal_int_literal, + STATE(443), 1, + sym_singular_expression, + STATE(453), 1, + sym_unary_expression, + STATE(836), 1, + sym_ident, + ACTIONS(336), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(338), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(346), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(393), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(391), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(394), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(342), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(352), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11567] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(322), 1, + sym_hex_int_literal, + ACTIONS(326), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(330), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(332), 1, + anon_sym_LPAREN, + STATE(466), 1, + sym_template_elaborated_ident, + STATE(504), 1, + sym_primary_expression, + STATE(548), 1, + sym_decimal_int_literal, + STATE(559), 1, + sym_call_phrase, + STATE(601), 1, + sym_unary_expression, + STATE(602), 1, + sym_singular_expression, + STATE(843), 1, + sym_ident, + ACTIONS(318), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(320), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(328), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(555), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(552), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(556), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(324), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(334), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11648] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(180), 1, + sym_singular_expression, + STATE(183), 1, + sym_unary_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11729] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(376), 1, + sym_hex_int_literal, + ACTIONS(380), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(384), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(386), 1, + anon_sym_LPAREN, + STATE(321), 1, + sym_template_elaborated_ident, + STATE(334), 1, + sym_primary_expression, + STATE(371), 1, + sym_call_phrase, + STATE(384), 1, + sym_decimal_int_literal, + STATE(434), 1, + sym_singular_expression, + STATE(580), 1, + sym_unary_expression, + STATE(812), 1, + sym_ident, + ACTIONS(372), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(374), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(382), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(374), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(361), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(372), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(378), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(388), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11810] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(394), 1, + sym_hex_int_literal, + ACTIONS(398), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(402), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(404), 1, + anon_sym_LPAREN, + STATE(188), 1, + sym_template_elaborated_ident, + STATE(213), 1, + sym_primary_expression, + STATE(270), 1, + sym_call_phrase, + STATE(280), 1, + sym_decimal_int_literal, + STATE(309), 1, + sym_singular_expression, + STATE(433), 1, + sym_unary_expression, + STATE(792), 1, + sym_ident, + ACTIONS(390), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(392), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(400), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(274), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(273), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(276), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(396), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(406), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11891] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(376), 1, + sym_hex_int_literal, + ACTIONS(380), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(384), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(386), 1, + anon_sym_LPAREN, + STATE(321), 1, + sym_template_elaborated_ident, + STATE(334), 1, + sym_primary_expression, + STATE(371), 1, + sym_call_phrase, + STATE(384), 1, + sym_decimal_int_literal, + STATE(424), 1, + sym_unary_expression, + STATE(434), 1, + sym_singular_expression, + STATE(812), 1, + sym_ident, + ACTIONS(372), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(374), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(382), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(374), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(361), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(372), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(378), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(388), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11972] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(394), 1, + sym_hex_int_literal, + ACTIONS(398), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(402), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(404), 1, + anon_sym_LPAREN, + STATE(188), 1, + sym_template_elaborated_ident, + STATE(213), 1, + sym_primary_expression, + STATE(270), 1, + sym_call_phrase, + STATE(280), 1, + sym_decimal_int_literal, + STATE(303), 1, + sym_unary_expression, + STATE(309), 1, + sym_singular_expression, + STATE(792), 1, + sym_ident, + ACTIONS(390), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(392), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(400), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(274), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(273), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(276), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(396), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(406), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12053] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(645), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12134] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(644), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12215] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(643), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12296] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(322), 1, + sym_hex_int_literal, + ACTIONS(326), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(330), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(332), 1, + anon_sym_LPAREN, + STATE(466), 1, + sym_template_elaborated_ident, + STATE(504), 1, + sym_primary_expression, + STATE(548), 1, + sym_decimal_int_literal, + STATE(559), 1, + sym_call_phrase, + STATE(592), 1, + sym_unary_expression, + STATE(602), 1, + sym_singular_expression, + STATE(843), 1, + sym_ident, + ACTIONS(318), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(320), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(328), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(555), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(552), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(556), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(324), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(334), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12377] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(311), 1, + sym_singular_expression, + STATE(312), 1, + sym_unary_expression, + STATE(782), 1, + sym_ident, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12458] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(606), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12539] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(607), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12620] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(608), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12701] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(394), 1, + sym_hex_int_literal, + ACTIONS(398), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(402), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(404), 1, + anon_sym_LPAREN, + STATE(188), 1, + sym_template_elaborated_ident, + STATE(213), 1, + sym_primary_expression, + STATE(270), 1, + sym_call_phrase, + STATE(280), 1, + sym_decimal_int_literal, + STATE(308), 1, + sym_unary_expression, + STATE(309), 1, + sym_singular_expression, + STATE(792), 1, + sym_ident, + ACTIONS(390), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(392), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(400), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(274), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(273), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(276), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(396), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(406), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12782] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(340), 1, + sym_hex_int_literal, + ACTIONS(344), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(348), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(350), 1, + anon_sym_LPAREN, + STATE(333), 1, + sym_template_elaborated_ident, + STATE(381), 1, + sym_primary_expression, + STATE(390), 1, + sym_call_phrase, + STATE(399), 1, + sym_decimal_int_literal, + STATE(443), 1, + sym_singular_expression, + STATE(603), 1, + sym_unary_expression, + STATE(836), 1, + sym_ident, + ACTIONS(336), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(338), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(346), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(393), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(391), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(394), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(342), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(352), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12863] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(603), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12944] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(453), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [13025] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(408), 8, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(410), 23, + anon_sym_const, + anon_sym_struct, + anon_sym_alias, + anon_sym_let, + anon_sym_var, + anon_sym_override, + anon_sym__, + anon_sym_if, + anon_sym_else, + anon_sym_switch, + anon_sym_case, + anon_sym_default, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + anon_sym_fn, + sym_ident_pattern_token, + [13066] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(412), 8, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(414), 23, + anon_sym_const, + anon_sym_struct, + anon_sym_alias, + anon_sym_let, + anon_sym_var, + anon_sym_override, + anon_sym__, + anon_sym_if, + anon_sym_else, + anon_sym_switch, + anon_sym_case, + anon_sym_default, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + anon_sym_fn, + sym_ident_pattern_token, + [13107] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(416), 8, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(418), 23, + anon_sym_const, + anon_sym_struct, + anon_sym_alias, + anon_sym_let, + anon_sym_var, + anon_sym_override, + anon_sym__, + anon_sym_if, + anon_sym_else, + anon_sym_switch, + anon_sym_case, + anon_sym_default, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + anon_sym_fn, + sym_ident_pattern_token, + [13148] = 5, + ACTIONS(424), 1, + sym__template_args_start, + STATE(150), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(422), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(420), 25, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13192] = 6, + ACTIONS(428), 1, + anon_sym_AT, + ACTIONS(431), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(426), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [13238] = 5, + ACTIONS(435), 1, + anon_sym_LPAREN, + STATE(159), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(437), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(433), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13281] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(441), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(439), 25, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13319] = 6, + ACTIONS(445), 1, + anon_sym_DOT, + ACTIONS(447), 1, + anon_sym_LBRACK, + STATE(181), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(449), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(443), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13363] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(453), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(451), 25, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13401] = 6, + ACTIONS(445), 1, + anon_sym_DOT, + ACTIONS(447), 1, + anon_sym_LBRACK, + STATE(184), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(457), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(455), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13445] = 6, + ACTIONS(445), 1, + anon_sym_DOT, + ACTIONS(447), 1, + anon_sym_LBRACK, + STATE(182), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(461), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(459), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13489] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(465), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(463), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13526] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(469), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(467), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13563] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(473), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(471), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13600] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(477), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(475), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13637] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(437), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(433), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13674] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(481), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(479), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13711] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(485), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(483), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13748] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(465), 11, + anon_sym_var, + anon_sym_override, + anon_sym_SLASH, + anon_sym_PIPE, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + ACTIONS(463), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13785] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(489), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(487), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13822] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(493), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(491), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13859] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(497), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(495), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13896] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(501), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(499), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13933] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(505), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(503), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13970] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(509), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(507), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14007] = 6, + ACTIONS(515), 1, + anon_sym_else, + STATE(194), 1, + sym_else_clause, + STATE(171), 2, + sym_else_if_clause, + aux_sym_if_statement_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(513), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(511), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14050] = 11, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(517), 1, + anon_sym_LBRACE, + ACTIONS(519), 1, + anon_sym_if, + ACTIONS(521), 1, + anon_sym_switch, + ACTIONS(523), 1, + anon_sym_loop, + ACTIONS(525), 1, + anon_sym_for, + ACTIONS(527), 1, + anon_sym_while, + STATE(172), 1, + sym_if_clause, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [14103] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(489), 11, + anon_sym_var, + anon_sym_override, + anon_sym_SLASH, + anon_sym_PIPE, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + ACTIONS(487), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14140] = 6, + ACTIONS(515), 1, + anon_sym_else, + STATE(201), 1, + sym_else_clause, + STATE(175), 2, + sym_else_if_clause, + aux_sym_if_statement_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(531), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(529), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14183] = 6, + ACTIONS(515), 1, + anon_sym_else, + STATE(220), 1, + sym_else_clause, + STATE(175), 2, + sym_else_if_clause, + aux_sym_if_statement_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(535), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(533), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14226] = 6, + ACTIONS(515), 1, + anon_sym_else, + STATE(220), 1, + sym_else_clause, + STATE(170), 2, + sym_else_if_clause, + aux_sym_if_statement_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(535), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(533), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14269] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(539), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(537), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14306] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(543), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(541), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14343] = 5, + ACTIONS(549), 1, + anon_sym_else, + STATE(175), 2, + sym_else_if_clause, + aux_sym_if_statement_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(547), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(545), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14383] = 9, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(552), 1, + sym_ident_pattern_token, + ACTIONS(554), 1, + anon_sym_RPAREN, + STATE(648), 1, + sym_param, + STATE(755), 1, + sym_param_list, + STATE(756), 1, + sym_ident, + STATE(261), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [14430] = 9, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(19), 1, + anon_sym_var, + ACTIONS(25), 1, + anon_sym_fn, + ACTIONS(556), 1, + anon_sym_override, + STATE(277), 1, + sym_function_header, + STATE(688), 1, + sym_variable_decl, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [14477] = 5, + ACTIONS(558), 1, + sym__template_args_start, + STATE(221), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(422), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(420), 20, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14516] = 7, + ACTIONS(562), 1, + anon_sym_AMP, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(566), 1, + anon_sym_PIPE, + ACTIONS(568), 1, + anon_sym_CARET, + ACTIONS(570), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [14559] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(574), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(572), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14594] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(578), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(576), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14629] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(457), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(455), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14664] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(582), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(580), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14699] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(586), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(584), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14734] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(588), 1, + sym__template_args_start, + STATE(217), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 22, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [14773] = 8, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(590), 1, + sym_ident_pattern_token, + ACTIONS(592), 1, + anon_sym_RBRACE, + STATE(687), 1, + sym_struct_member, + STATE(760), 1, + sym_member_ident, + STATE(253), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [14817] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(596), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(594), 17, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_else, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14851] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(598), 1, + anon_sym_LPAREN, + STATE(266), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [14889] = 5, + ACTIONS(600), 1, + anon_sym_LPAREN, + STATE(237), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(437), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(433), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14927] = 8, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(590), 1, + sym_ident_pattern_token, + ACTIONS(602), 1, + anon_sym_RBRACE, + STATE(687), 1, + sym_struct_member, + STATE(760), 1, + sym_member_ident, + STATE(253), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [14971] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(606), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(604), 17, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_else, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15005] = 8, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(552), 1, + sym_ident_pattern_token, + ACTIONS(608), 1, + anon_sym_RPAREN, + STATE(689), 1, + sym_param, + STATE(756), 1, + sym_ident, + STATE(261), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15049] = 8, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(552), 1, + sym_ident_pattern_token, + ACTIONS(610), 1, + anon_sym_RPAREN, + STATE(689), 1, + sym_param, + STATE(756), 1, + sym_ident, + STATE(261), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15093] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(535), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(533), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15126] = 6, + ACTIONS(612), 1, + anon_sym_DOT, + ACTIONS(614), 1, + anon_sym_LBRACK, + STATE(299), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(457), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(455), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [15165] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(691), 1, + sym_template_elaborated_ident, + STATE(764), 1, + sym_ident, + STATE(222), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15206] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(620), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(618), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15239] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(624), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(622), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15272] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(628), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(626), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15305] = 5, + ACTIONS(630), 1, + sym__template_args_start, + STATE(293), 1, + sym_template_list, + ACTIONS(422), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 19, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [15342] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(634), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(632), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15375] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(590), 1, + sym_ident_pattern_token, + STATE(687), 1, + sym_struct_member, + STATE(760), 1, + sym_member_ident, + STATE(253), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15416] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(638), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(636), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15449] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(729), 1, + sym_template_elaborated_ident, + STATE(764), 1, + sym_ident, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15490] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + ACTIONS(640), 1, + anon_sym_COLON, + STATE(673), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15531] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(689), 1, + sym_param, + STATE(756), 1, + sym_ident, + STATE(261), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15572] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(642), 1, + anon_sym_DOT, + ACTIONS(644), 1, + anon_sym_LBRACK, + STATE(307), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [15611] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + ACTIONS(646), 1, + anon_sym_COLON, + STATE(663), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15652] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 22, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [15685] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(650), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(648), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15718] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(654), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(652), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15751] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(658), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(656), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15784] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(642), 1, + anon_sym_DOT, + ACTIONS(644), 1, + anon_sym_LBRACK, + STATE(304), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [15823] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(713), 1, + sym_template_elaborated_ident, + STATE(764), 1, + sym_ident, + STATE(204), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15864] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(642), 1, + anon_sym_DOT, + ACTIONS(644), 1, + anon_sym_LBRACK, + STATE(306), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [15903] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(662), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(660), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15936] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 22, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [15969] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(666), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(664), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16002] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(670), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(668), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16035] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(531), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(529), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16068] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(453), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(451), 20, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16101] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(713), 1, + sym_template_elaborated_ident, + STATE(764), 1, + sym_ident, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16142] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(674), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(672), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16175] = 6, + ACTIONS(612), 1, + anon_sym_DOT, + ACTIONS(614), 1, + anon_sym_LBRACK, + STATE(294), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(461), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(459), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16214] = 18, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(43), 1, + anon_sym_var, + ACTIONS(47), 1, + anon_sym__, + ACTIONS(676), 1, + anon_sym_SEMI, + STATE(406), 1, + sym_core_lhs_expression, + STATE(437), 1, + sym_lhs_expression, + STATE(702), 1, + sym_template_elaborated_ident, + STATE(703), 1, + sym_variable_decl, + STATE(705), 1, + sym_call_phrase, + STATE(749), 1, + sym_for_init, + STATE(795), 1, + sym_ident, + STATE(823), 1, + sym_for_header, + ACTIONS(37), 2, + anon_sym_const, + anon_sym_let, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(706), 3, + sym_assignment_statement, + sym_increment_statement, + sym_decrement_statement, + STATE(787), 3, + sym_variable_or_value_statement, + sym_func_call_statement, + sym_variable_updating_statement, + [16277] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(590), 1, + sym_ident_pattern_token, + STATE(655), 1, + sym_struct_member, + STATE(760), 1, + sym_member_ident, + STATE(253), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16318] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(680), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(678), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16351] = 6, + ACTIONS(612), 1, + anon_sym_DOT, + ACTIONS(614), 1, + anon_sym_LBRACK, + STATE(305), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(449), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(443), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16390] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(684), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(682), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16423] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(688), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(686), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16456] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(692), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(690), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16489] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + ACTIONS(694), 1, + anon_sym_if, + STATE(219), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16530] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(441), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(439), 20, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16563] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(698), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(696), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16596] = 18, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(43), 1, + anon_sym_var, + ACTIONS(47), 1, + anon_sym__, + ACTIONS(676), 1, + anon_sym_SEMI, + STATE(406), 1, + sym_core_lhs_expression, + STATE(437), 1, + sym_lhs_expression, + STATE(702), 1, + sym_template_elaborated_ident, + STATE(703), 1, + sym_variable_decl, + STATE(705), 1, + sym_call_phrase, + STATE(749), 1, + sym_for_init, + STATE(788), 1, + sym_for_header, + STATE(795), 1, + sym_ident, + ACTIONS(37), 2, + anon_sym_const, + anon_sym_let, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(706), 3, + sym_assignment_statement, + sym_increment_statement, + sym_decrement_statement, + STATE(787), 3, + sym_variable_or_value_statement, + sym_func_call_statement, + sym_variable_updating_statement, + [16659] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(477), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(475), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16691] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(485), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(483), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16723] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(191), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16761] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(700), 1, + anon_sym_LBRACE, + STATE(203), 1, + sym_switch_body, + STATE(284), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16799] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(570), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [16833] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(211), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16871] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(539), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(537), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16903] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(501), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(499), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16935] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(497), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(495), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16967] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(493), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(491), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16999] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(223), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17037] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(543), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(541), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17069] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(187), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17107] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(437), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(433), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17139] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(473), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(471), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17171] = 3, + ACTIONS(441), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 20, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + sym_ident_pattern_token, + [17203] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(489), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(487), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17235] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(590), 1, + sym_ident_pattern_token, + STATE(783), 1, + sym_member_ident, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17273] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(585), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17311] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(198), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17349] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(656), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17387] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17419] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17451] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(230), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17489] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(481), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(479), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17521] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(785), 1, + sym_ident, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17559] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17591] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(465), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(463), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17623] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(700), 1, + anon_sym_LBRACE, + STATE(197), 1, + sym_switch_body, + STATE(284), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17661] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(509), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(507), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17693] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17725] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17757] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(505), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(503), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17789] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(469), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(467), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17821] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17853] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17885] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17917] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17949] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17981] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(662), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18019] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18051] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(579), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18089] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18121] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18153] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18185] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(702), 1, + anon_sym_LBRACE, + STATE(813), 1, + sym_continuing_compound_statement, + STATE(292), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18223] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18255] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(129), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 17, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18290] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(710), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18325] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(712), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18360] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(714), 1, + sym__template_args_start, + STATE(316), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 18, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18395] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(129), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 17, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18430] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(718), 1, + anon_sym_LBRACE, + STATE(291), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18465] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(517), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18500] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(720), 1, + anon_sym_LBRACE, + STATE(285), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18535] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(720), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18570] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(722), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18605] = 3, + ACTIONS(453), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 19, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [18636] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(457), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(455), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [18666] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(724), 1, + sym__template_args_start, + STATE(344), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18700] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(726), 8, + anon_sym_true, + anon_sym_false, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + sym_hex_int_literal, + aux_sym_decimal_float_literal_token4, + aux_sym_hex_float_literal_token2, + sym_ident_pattern_token, + ACTIONS(728), 12, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [18730] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(730), 1, + anon_sym_LPAREN, + STATE(331), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18764] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(732), 8, + anon_sym_true, + anon_sym_false, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + sym_hex_int_literal, + aux_sym_decimal_float_literal_token4, + aux_sym_hex_float_literal_token2, + sym_ident_pattern_token, + ACTIONS(734), 12, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [18794] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(586), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(584), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [18824] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(736), 8, + anon_sym_true, + anon_sym_false, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + sym_hex_int_literal, + aux_sym_decimal_float_literal_token4, + aux_sym_hex_float_literal_token2, + sym_ident_pattern_token, + ACTIONS(738), 12, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [18854] = 3, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18884] = 5, + ACTIONS(740), 1, + anon_sym_LPAREN, + STATE(328), 1, + sym_argument_expression_list, + ACTIONS(437), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [18918] = 3, + ACTIONS(744), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(742), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18948] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18978] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(578), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(576), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19008] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19038] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19068] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19098] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19128] = 7, + ACTIONS(562), 1, + anon_sym_AMP, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(566), 1, + anon_sym_PIPE, + ACTIONS(568), 1, + anon_sym_CARET, + ACTIONS(746), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19166] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(574), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(572), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19196] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(582), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(580), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19226] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 18, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19255] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(748), 1, + anon_sym_DOT, + ACTIONS(750), 1, + anon_sym_LBRACK, + STATE(409), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19290] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(748), 1, + anon_sym_DOT, + ACTIONS(750), 1, + anon_sym_LBRACK, + STATE(410), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19325] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 18, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19354] = 6, + ACTIONS(752), 1, + anon_sym_DOT, + ACTIONS(754), 1, + anon_sym_LBRACK, + STATE(387), 1, + sym_component_or_swizzle_specifier, + ACTIONS(461), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19389] = 6, + ACTIONS(752), 1, + anon_sym_DOT, + ACTIONS(754), 1, + anon_sym_LBRACK, + STATE(385), 1, + sym_component_or_swizzle_specifier, + ACTIONS(457), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19424] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(756), 1, + sym__template_args_start, + STATE(376), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19457] = 6, + ACTIONS(752), 1, + anon_sym_DOT, + ACTIONS(754), 1, + anon_sym_LBRACK, + STATE(412), 1, + sym_component_or_swizzle_specifier, + ACTIONS(449), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19492] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(758), 1, + anon_sym_LPAREN, + STATE(366), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19525] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(748), 1, + anon_sym_DOT, + ACTIONS(750), 1, + anon_sym_LBRACK, + STATE(404), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19560] = 3, + ACTIONS(477), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19588] = 3, + ACTIONS(539), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19616] = 3, + ACTIONS(505), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19644] = 3, + ACTIONS(473), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19672] = 8, + ACTIONS(762), 1, + anon_sym_diagnostic, + ACTIONS(765), 1, + anon_sym_const, + ACTIONS(767), 1, + anon_sym_enable, + ACTIONS(770), 1, + anon_sym_requires, + STATE(327), 2, + sym_global_directive, + aux_sym_translation_unit_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(463), 3, + sym_diagnostic_directive, + sym_enable_directive, + sym_requires_directive, + ACTIONS(760), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [19710] = 3, + ACTIONS(485), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19738] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19766] = 19, + ACTIONS(773), 1, + sym_ident_pattern_token, + ACTIONS(775), 1, + anon_sym_diagnostic, + ACTIONS(777), 1, + anon_sym_align, + ACTIONS(779), 1, + anon_sym_binding, + ACTIONS(781), 1, + anon_sym_blend_src, + ACTIONS(783), 1, + anon_sym_builtin, + ACTIONS(785), 1, + anon_sym_const, + ACTIONS(787), 1, + anon_sym_group, + ACTIONS(789), 1, + anon_sym_id, + ACTIONS(791), 1, + anon_sym_interpolate, + ACTIONS(793), 1, + anon_sym_invariant, + ACTIONS(795), 1, + anon_sym_location, + ACTIONS(797), 1, + anon_sym_must_use, + ACTIONS(799), 1, + anon_sym_size, + ACTIONS(801), 1, + anon_sym_workgroup_size, + ACTIONS(803), 1, + anon_sym_vertex, + ACTIONS(805), 1, + anon_sym_fragment, + ACTIONS(807), 1, + anon_sym_compute, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [19826] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19854] = 3, + ACTIONS(469), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19882] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(809), 1, + anon_sym_LPAREN, + STATE(407), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19914] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(811), 1, + anon_sym_DOT, + ACTIONS(813), 1, + anon_sym_LBRACK, + STATE(431), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19948] = 4, + STATE(113), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 15, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19978] = 3, + ACTIONS(437), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20006] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20034] = 3, + ACTIONS(497), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20062] = 3, + ACTIONS(509), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20090] = 3, + ACTIONS(493), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20118] = 5, + ACTIONS(420), 1, + anon_sym_LPAREN, + ACTIONS(630), 1, + sym__template_args_start, + STATE(293), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(819), 15, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [20150] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20178] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20206] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20234] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20262] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20290] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20318] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20346] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20374] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20402] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20430] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20458] = 3, + ACTIONS(501), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20486] = 3, + ACTIONS(543), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20514] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20542] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(811), 1, + anon_sym_DOT, + ACTIONS(813), 1, + anon_sym_LBRACK, + STATE(419), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20576] = 3, + ACTIONS(481), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20604] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20632] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20660] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(811), 1, + anon_sym_DOT, + ACTIONS(813), 1, + anon_sym_LBRACK, + STATE(422), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20694] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20721] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20748] = 14, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(47), 1, + anon_sym__, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(821), 1, + anon_sym_RPAREN, + STATE(406), 1, + sym_core_lhs_expression, + STATE(437), 1, + sym_lhs_expression, + STATE(702), 1, + sym_template_elaborated_ident, + STATE(705), 1, + sym_call_phrase, + STATE(795), 1, + sym_ident, + STATE(890), 1, + sym_for_update, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + STATE(852), 2, + sym_func_call_statement, + sym_variable_updating_statement, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(706), 3, + sym_assignment_statement, + sym_increment_statement, + sym_decrement_statement, + [20797] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20824] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20851] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20878] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20905] = 14, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(47), 1, + anon_sym__, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(823), 1, + anon_sym_RPAREN, + STATE(406), 1, + sym_core_lhs_expression, + STATE(437), 1, + sym_lhs_expression, + STATE(702), 1, + sym_template_elaborated_ident, + STATE(705), 1, + sym_call_phrase, + STATE(795), 1, + sym_ident, + STATE(870), 1, + sym_for_update, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + STATE(852), 2, + sym_func_call_statement, + sym_variable_updating_statement, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(706), 3, + sym_assignment_statement, + sym_increment_statement, + sym_decrement_statement, + [20954] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(746), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20983] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21010] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21037] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21064] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(825), 1, + anon_sym_DOT, + ACTIONS(827), 1, + anon_sym_LBRACK, + STATE(448), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21097] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21124] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21151] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21178] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21205] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21232] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(825), 1, + anon_sym_DOT, + ACTIONS(827), 1, + anon_sym_LBRACK, + STATE(441), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21265] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21292] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(825), 1, + anon_sym_DOT, + ACTIONS(827), 1, + anon_sym_LBRACK, + STATE(455), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21325] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21352] = 14, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(47), 1, + anon_sym__, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(829), 1, + anon_sym_RPAREN, + STATE(406), 1, + sym_core_lhs_expression, + STATE(437), 1, + sym_lhs_expression, + STATE(702), 1, + sym_template_elaborated_ident, + STATE(705), 1, + sym_call_phrase, + STATE(795), 1, + sym_ident, + STATE(850), 1, + sym_for_update, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + STATE(852), 2, + sym_func_call_statement, + sym_variable_updating_statement, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(706), 3, + sym_assignment_statement, + sym_increment_statement, + sym_decrement_statement, + [21401] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21428] = 3, + ACTIONS(586), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [21454] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21480] = 3, + ACTIONS(457), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [21506] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(128), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 12, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21536] = 5, + ACTIONS(831), 1, + anon_sym_DOT, + ACTIONS(833), 1, + anon_sym_LBRACK, + STATE(492), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [21566] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21592] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21618] = 5, + ACTIONS(831), 1, + anon_sym_DOT, + ACTIONS(833), 1, + anon_sym_LBRACK, + STATE(483), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [21648] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21674] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21700] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21726] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21752] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(128), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 12, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21782] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21808] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21834] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21860] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21886] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21912] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21938] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21964] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(835), 1, + sym__template_args_start, + STATE(438), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 13, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21994] = 5, + ACTIONS(831), 1, + anon_sym_DOT, + ACTIONS(833), 1, + anon_sym_LBRACK, + STATE(462), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(837), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [22024] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22050] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22076] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22102] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22128] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22154] = 3, + ACTIONS(578), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22180] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(839), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22208] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22234] = 3, + ACTIONS(582), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22260] = 3, + ACTIONS(574), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22286] = 5, + ACTIONS(841), 1, + sym__template_args_start, + STATE(445), 1, + sym_template_list, + ACTIONS(422), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 12, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22316] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 15, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [22339] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22364] = 3, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22389] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(123), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 11, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22418] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22443] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(845), 6, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(843), 9, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22468] = 3, + ACTIONS(744), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(742), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22493] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(847), 1, + anon_sym_LPAREN, + STATE(478), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22522] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(123), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 11, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22551] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 15, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [22574] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(849), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 12, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [22601] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22626] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(851), 15, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [22649] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22674] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(819), 15, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [22697] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(853), 15, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22720] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22745] = 5, + ACTIONS(855), 1, + anon_sym_LPAREN, + STATE(488), 1, + sym_argument_expression_list, + ACTIONS(437), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22774] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22798] = 6, + ACTIONS(857), 1, + anon_sym_EQ, + ACTIONS(861), 1, + anon_sym_PLUS_PLUS, + ACTIONS(863), 1, + anon_sym_DASH_DASH, + STATE(68), 1, + sym_compound_assignment_operator, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(859), 10, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + [22828] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 13, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22852] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(865), 6, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(843), 8, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_PIPE_PIPE, + [22876] = 6, + ACTIONS(867), 1, + anon_sym_DOT, + ACTIONS(869), 1, + anon_sym_LBRACK, + STATE(543), 1, + sym_component_or_swizzle_specifier, + ACTIONS(449), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22906] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22930] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(871), 1, + anon_sym_DOT, + ACTIONS(873), 1, + anon_sym_LBRACK, + STATE(544), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22960] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22984] = 6, + ACTIONS(867), 1, + anon_sym_DOT, + ACTIONS(869), 1, + anon_sym_LBRACK, + STATE(536), 1, + sym_component_or_swizzle_specifier, + ACTIONS(461), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23014] = 3, + ACTIONS(453), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 12, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23038] = 3, + ACTIONS(441), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 12, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23062] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(141), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 10, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [23090] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23114] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(875), 1, + sym__template_args_start, + STATE(499), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23142] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(141), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 10, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [23170] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(871), 1, + anon_sym_DOT, + ACTIONS(873), 1, + anon_sym_LBRACK, + STATE(524), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23200] = 6, + ACTIONS(867), 1, + anon_sym_DOT, + ACTIONS(869), 1, + anon_sym_LBRACK, + STATE(540), 1, + sym_component_or_swizzle_specifier, + ACTIONS(457), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23230] = 3, + ACTIONS(744), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(742), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23254] = 3, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23278] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23302] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 13, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23326] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(871), 1, + anon_sym_DOT, + ACTIONS(873), 1, + anon_sym_LBRACK, + STATE(571), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23356] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23379] = 4, + STATE(112), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 10, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23404] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23427] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23450] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(877), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [23471] = 3, + ACTIONS(881), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(879), 12, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_diagnostic, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + anon_sym_enable, + anon_sym_requires, + [23494] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23517] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23540] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(883), 1, + anon_sym_LPAREN, + STATE(564), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23567] = 3, + ACTIONS(437), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23590] = 3, + ACTIONS(539), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23613] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23636] = 3, + ACTIONS(509), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23659] = 3, + ACTIONS(489), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23682] = 3, + ACTIONS(481), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23705] = 3, + ACTIONS(887), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(885), 12, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_diagnostic, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + anon_sym_enable, + anon_sym_requires, + [23728] = 3, + ACTIONS(493), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23751] = 3, + ACTIONS(477), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23774] = 3, + ACTIONS(891), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(889), 12, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_diagnostic, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + anon_sym_enable, + anon_sym_requires, + [23797] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23820] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23843] = 5, + ACTIONS(740), 1, + anon_sym_LPAREN, + STATE(510), 1, + sym_argument_expression_list, + ACTIONS(895), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(893), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [23870] = 3, + ACTIONS(543), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23893] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23916] = 3, + ACTIONS(501), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23939] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [23960] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23983] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24006] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24029] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24052] = 3, + ACTIONS(485), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24075] = 3, + ACTIONS(473), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24098] = 3, + ACTIONS(899), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(897), 12, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_diagnostic, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + anon_sym_enable, + anon_sym_requires, + [24121] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24144] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [24165] = 3, + ACTIONS(497), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24188] = 3, + ACTIONS(465), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24211] = 3, + ACTIONS(505), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24234] = 3, + ACTIONS(469), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24257] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24280] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24302] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24324] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(901), 1, + anon_sym_DOT, + ACTIONS(903), 1, + anon_sym_LBRACK, + STATE(598), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24352] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(907), 3, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(905), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24374] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(911), 3, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(909), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24396] = 4, + STATE(110), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 9, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24420] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(901), 1, + anon_sym_DOT, + ACTIONS(903), 1, + anon_sym_LBRACK, + STATE(595), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24448] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(901), 1, + anon_sym_DOT, + ACTIONS(903), 1, + anon_sym_LBRACK, + STATE(596), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24476] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24497] = 3, + ACTIONS(915), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(913), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24518] = 4, + ACTIONS(590), 1, + sym_ident_pattern_token, + STATE(317), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(917), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24541] = 4, + ACTIONS(919), 1, + sym_ident_pattern_token, + STATE(152), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(921), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24564] = 3, + ACTIONS(925), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(923), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24585] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24606] = 3, + ACTIONS(929), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(927), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24627] = 3, + ACTIONS(933), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(931), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24648] = 3, + ACTIONS(937), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(935), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24669] = 3, + ACTIONS(941), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(939), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24690] = 4, + ACTIONS(943), 1, + sym_ident_pattern_token, + STATE(356), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(945), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24713] = 4, + ACTIONS(947), 1, + sym_ident_pattern_token, + STATE(314), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(949), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24736] = 4, + ACTIONS(951), 1, + sym_ident_pattern_token, + STATE(442), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(953), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24759] = 4, + ACTIONS(955), 1, + sym_ident_pattern_token, + STATE(215), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(957), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24782] = 3, + ACTIONS(961), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(959), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24803] = 3, + ACTIONS(965), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(963), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24824] = 4, + ACTIONS(967), 1, + sym_ident_pattern_token, + STATE(444), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(969), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24847] = 3, + ACTIONS(973), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(971), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24868] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24889] = 3, + ACTIONS(977), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(975), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24910] = 3, + ACTIONS(981), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(979), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24931] = 3, + ACTIONS(985), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(983), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24952] = 3, + ACTIONS(989), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(987), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24973] = 3, + ACTIONS(993), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(991), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24994] = 3, + ACTIONS(997), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(995), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25015] = 3, + ACTIONS(1001), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(999), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25036] = 3, + ACTIONS(1005), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1003), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25057] = 3, + ACTIONS(1009), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1007), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25078] = 3, + ACTIONS(1013), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1011), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25099] = 3, + ACTIONS(1017), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1015), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25120] = 3, + ACTIONS(457), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [25141] = 3, + ACTIONS(1021), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1019), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25162] = 3, + ACTIONS(1025), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1023), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25183] = 3, + ACTIONS(1029), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1027), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25204] = 3, + ACTIONS(586), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [25225] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25246] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25267] = 3, + ACTIONS(578), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [25288] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25309] = 3, + ACTIONS(1033), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1031), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25330] = 3, + ACTIONS(1037), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1035), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25351] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(1039), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25374] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25395] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25416] = 4, + ACTIONS(1041), 1, + sym_ident_pattern_token, + STATE(224), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1043), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [25439] = 4, + ACTIONS(1045), 1, + sym_ident_pattern_token, + STATE(373), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1047), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [25462] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25483] = 4, + ACTIONS(1049), 1, + sym_ident_pattern_token, + STATE(505), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1051), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [25506] = 3, + ACTIONS(1055), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1053), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25527] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25548] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25569] = 3, + ACTIONS(574), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [25590] = 3, + ACTIONS(1059), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1057), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25611] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25632] = 4, + ACTIONS(1061), 1, + sym_ident_pattern_token, + STATE(389), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1063), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [25655] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25676] = 3, + ACTIONS(582), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [25697] = 3, + ACTIONS(1067), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1065), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25718] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25739] = 4, + STATE(108), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 8, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_PIPE_PIPE, + [25762] = 3, + ACTIONS(1071), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1069), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25783] = 3, + ACTIONS(1075), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1073), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25804] = 3, + ACTIONS(1079), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1077), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25825] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25846] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25867] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25888] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25909] = 3, + ACTIONS(1083), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1081), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25930] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25951] = 3, + ACTIONS(1087), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1085), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25972] = 3, + ACTIONS(1091), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1089), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25993] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26014] = 3, + ACTIONS(1095), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1093), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [26035] = 3, + ACTIONS(1099), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1097), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26055] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(853), 10, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26073] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(133), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 6, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26097] = 3, + ACTIONS(1103), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1101), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26117] = 3, + ACTIONS(1105), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(231), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26137] = 3, + ACTIONS(1109), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1107), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26157] = 3, + ACTIONS(1113), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1111), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26177] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(843), 4, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + ACTIONS(1115), 6, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [26197] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(1117), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 7, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [26219] = 3, + ACTIONS(1121), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1119), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26239] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(133), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 6, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26263] = 3, + ACTIONS(1125), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1123), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26283] = 3, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26302] = 3, + ACTIONS(744), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(742), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26321] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(119), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 5, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [26344] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(843), 3, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_PIPE_PIPE, + ACTIONS(1127), 6, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [26363] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26382] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26401] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1129), 9, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26418] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26437] = 4, + ACTIONS(1133), 1, + anon_sym_AMP_AMP, + ACTIONS(1135), 1, + anon_sym_PIPE_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1131), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26458] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(119), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 5, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [26481] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26500] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26519] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(853), 9, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26536] = 3, + ACTIONS(1139), 1, + anon_sym_AMP_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1137), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26554] = 3, + ACTIONS(1141), 1, + anon_sym_PIPE_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1137), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26572] = 3, + ACTIONS(1145), 1, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1143), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26590] = 3, + ACTIONS(1147), 1, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1143), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26608] = 3, + ACTIONS(1149), 1, + anon_sym_CARET, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1143), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26626] = 7, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(1151), 1, + anon_sym_LPAREN, + STATE(634), 1, + sym_core_lhs_expression, + STATE(753), 1, + sym_lhs_expression, + STATE(754), 1, + sym_ident, + ACTIONS(1153), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26651] = 7, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(406), 1, + sym_core_lhs_expression, + STATE(462), 1, + sym_lhs_expression, + STATE(780), 1, + sym_ident, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26676] = 7, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(1151), 1, + anon_sym_LPAREN, + STATE(634), 1, + sym_core_lhs_expression, + STATE(754), 1, + sym_ident, + STATE(781), 1, + sym_lhs_expression, + ACTIONS(1153), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26701] = 4, + STATE(109), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 4, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26720] = 6, + ACTIONS(1155), 1, + anon_sym_RBRACE, + ACTIONS(1157), 1, + anon_sym_case, + ACTIONS(1159), 1, + anon_sym_default, + STATE(617), 2, + sym_switch_clause, + aux_sym_switch_body_repeat1, + STATE(684), 2, + sym_case_clause, + sym_default_alone_clause, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26743] = 6, + ACTIONS(1157), 1, + anon_sym_case, + ACTIONS(1159), 1, + anon_sym_default, + ACTIONS(1161), 1, + anon_sym_RBRACE, + STATE(617), 2, + sym_switch_clause, + aux_sym_switch_body_repeat1, + STATE(684), 2, + sym_case_clause, + sym_default_alone_clause, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26766] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1131), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26781] = 7, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(1151), 1, + anon_sym_LPAREN, + STATE(634), 1, + sym_core_lhs_expression, + STATE(754), 1, + sym_ident, + STATE(895), 1, + sym_lhs_expression, + ACTIONS(1153), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26806] = 6, + ACTIONS(1163), 1, + anon_sym_RBRACE, + ACTIONS(1165), 1, + anon_sym_case, + ACTIONS(1168), 1, + anon_sym_default, + STATE(617), 2, + sym_switch_clause, + aux_sym_switch_body_repeat1, + STATE(684), 2, + sym_case_clause, + sym_default_alone_clause, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26829] = 4, + STATE(111), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 3, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_PIPE_PIPE, + [26847] = 5, + ACTIONS(1157), 1, + anon_sym_case, + ACTIONS(1159), 1, + anon_sym_default, + STATE(614), 2, + sym_switch_clause, + aux_sym_switch_body_repeat1, + STATE(684), 2, + sym_case_clause, + sym_default_alone_clause, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26867] = 5, + ACTIONS(1157), 1, + anon_sym_case, + ACTIONS(1159), 1, + anon_sym_default, + STATE(613), 2, + sym_switch_clause, + aux_sym_switch_body_repeat1, + STATE(684), 2, + sym_case_clause, + sym_default_alone_clause, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26887] = 4, + ACTIONS(1171), 1, + anon_sym_COMMA, + STATE(624), 1, + aux_sym_case_selectors_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(169), 3, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + [26904] = 6, + ACTIONS(552), 1, + sym_ident_pattern_token, + ACTIONS(630), 1, + sym__template_args_start, + STATE(658), 1, + sym_ident, + STATE(679), 1, + sym_template_list, + STATE(700), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26925] = 4, + ACTIONS(1173), 1, + anon_sym_COMMA, + STATE(621), 1, + aux_sym_case_selectors_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1175), 3, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + [26942] = 4, + ACTIONS(1177), 1, + anon_sym_COMMA, + STATE(624), 1, + aux_sym_case_selectors_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1180), 3, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + [26959] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1182), 5, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_EQ, + [26972] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1184), 5, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_RBRACE, + anon_sym_EQ, + [26985] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1180), 4, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + [26997] = 4, + ACTIONS(1133), 1, + anon_sym_AMP_AMP, + ACTIONS(1135), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1131), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27013] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(694), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27031] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(714), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27049] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(690), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27067] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(853), 4, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [27079] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1186), 4, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + [27091] = 5, + ACTIONS(752), 1, + anon_sym_DOT, + ACTIONS(754), 1, + anon_sym_LBRACK, + ACTIONS(837), 1, + anon_sym_RPAREN, + STATE(895), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27109] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1129), 4, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [27121] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(712), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27139] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(748), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27157] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(759), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27175] = 4, + ACTIONS(1188), 1, + anon_sym_SEMI, + ACTIONS(1190), 1, + anon_sym_COMMA, + STATE(639), 1, + aux_sym_enable_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27190] = 4, + ACTIONS(1193), 1, + anon_sym_COMMA, + ACTIONS(1196), 1, + anon_sym_RBRACE, + STATE(640), 1, + aux_sym_struct_body_decl_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27205] = 4, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(658), 1, + sym_ident, + STATE(869), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27220] = 3, + ACTIONS(1200), 1, + anon_sym_DASH_GT, + ACTIONS(1198), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27233] = 3, + ACTIONS(1149), 1, + anon_sym_CARET, + ACTIONS(1143), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27246] = 3, + ACTIONS(1147), 1, + anon_sym_AMP, + ACTIONS(1143), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27259] = 3, + ACTIONS(1145), 1, + anon_sym_PIPE, + ACTIONS(1143), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27272] = 3, + ACTIONS(1141), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1137), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27285] = 3, + ACTIONS(1139), 1, + anon_sym_AMP_AMP, + ACTIONS(1137), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27298] = 4, + ACTIONS(1202), 1, + anon_sym_COMMA, + ACTIONS(1204), 1, + anon_sym_RPAREN, + STATE(674), 1, + aux_sym_param_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27313] = 4, + ACTIONS(1206), 1, + sym_ident_pattern_token, + ACTIONS(1208), 1, + anon_sym_SEMI, + STATE(743), 1, + sym_enable_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27328] = 4, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(658), 1, + sym_ident, + STATE(735), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27343] = 4, + ACTIONS(1210), 1, + sym_ident_pattern_token, + ACTIONS(1212), 1, + anon_sym_SEMI, + STATE(741), 1, + sym_software_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27358] = 4, + ACTIONS(1206), 1, + sym_ident_pattern_token, + STATE(666), 1, + sym_enable_extension_name, + STATE(856), 1, + sym_enable_extension_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27373] = 4, + ACTIONS(1210), 1, + sym_ident_pattern_token, + STATE(668), 1, + sym_software_extension_name, + STATE(846), 1, + sym_software_extension_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27388] = 4, + ACTIONS(1214), 1, + anon_sym_SEMI, + ACTIONS(1216), 1, + anon_sym_COMMA, + STATE(654), 1, + aux_sym_software_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27403] = 4, + ACTIONS(1219), 1, + anon_sym_COMMA, + ACTIONS(1221), 1, + anon_sym_RBRACE, + STATE(670), 1, + aux_sym_struct_body_decl_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27418] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1223), 3, + anon_sym_RBRACE, + anon_sym_case, + anon_sym_default, + [27429] = 4, + ACTIONS(1225), 1, + anon_sym_COMMA, + ACTIONS(1227), 1, + anon_sym_RPAREN, + STATE(667), 1, + aux_sym_expression_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27444] = 3, + ACTIONS(1231), 1, + anon_sym_COLON, + ACTIONS(1229), 2, + anon_sym_SEMI, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27457] = 4, + ACTIONS(1233), 1, + anon_sym_COMMA, + ACTIONS(1235), 1, + sym__template_args_end, + STATE(671), 1, + aux_sym_template_arg_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27472] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1237), 3, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_RPAREN, + [27483] = 3, + ACTIONS(1239), 1, + anon_sym_DOT, + ACTIONS(1241), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27496] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1243), 3, + anon_sym_RBRACE, + anon_sym_case, + anon_sym_default, + [27507] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1245), 3, + anon_sym_RBRACE, + anon_sym_case, + anon_sym_default, + [27518] = 4, + ACTIONS(1206), 1, + sym_ident_pattern_token, + ACTIONS(1247), 1, + anon_sym_SEMI, + STATE(743), 1, + sym_enable_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27533] = 4, + ACTIONS(1249), 1, + sym_ident_pattern_token, + ACTIONS(1251), 1, + anon_sym_RPAREN, + STATE(698), 1, + sym_interpolate_sampling_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27548] = 4, + ACTIONS(1253), 1, + anon_sym_SEMI, + ACTIONS(1255), 1, + anon_sym_COMMA, + STATE(682), 1, + aux_sym_enable_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27563] = 4, + ACTIONS(219), 1, + anon_sym_RPAREN, + ACTIONS(1257), 1, + anon_sym_COMMA, + STATE(680), 1, + aux_sym_expression_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27578] = 4, + ACTIONS(1259), 1, + anon_sym_SEMI, + ACTIONS(1261), 1, + anon_sym_COMMA, + STATE(685), 1, + aux_sym_software_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27593] = 4, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(658), 1, + sym_ident, + STATE(707), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27608] = 4, + ACTIONS(602), 1, + anon_sym_RBRACE, + ACTIONS(1263), 1, + anon_sym_COMMA, + STATE(640), 1, + aux_sym_struct_body_decl_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27623] = 4, + ACTIONS(209), 1, + sym__template_args_end, + ACTIONS(1265), 1, + anon_sym_COMMA, + STATE(681), 1, + aux_sym_template_arg_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27638] = 3, + ACTIONS(1269), 1, + anon_sym_DASH_GT, + ACTIONS(1267), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27651] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1271), 3, + anon_sym_RBRACE, + anon_sym_case, + anon_sym_default, + [27662] = 4, + ACTIONS(608), 1, + anon_sym_RPAREN, + ACTIONS(1273), 1, + anon_sym_COMMA, + STATE(686), 1, + aux_sym_param_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27677] = 4, + ACTIONS(1275), 1, + sym_ident_pattern_token, + STATE(661), 1, + sym_diagnostic_name_token, + STATE(728), 1, + sym_diagnostic_rule_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27692] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(819), 3, + anon_sym_DOT, + anon_sym_RPAREN, + anon_sym_LBRACK, + [27703] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(851), 3, + anon_sym_DOT, + anon_sym_RPAREN, + anon_sym_LBRACK, + [27714] = 4, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(658), 1, + sym_ident, + STATE(752), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27729] = 4, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(658), 1, + sym_ident, + STATE(693), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27744] = 4, + ACTIONS(1277), 1, + anon_sym_COMMA, + ACTIONS(1280), 1, + anon_sym_RPAREN, + STATE(680), 1, + aux_sym_expression_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27759] = 4, + ACTIONS(1282), 1, + anon_sym_COMMA, + ACTIONS(1285), 1, + sym__template_args_end, + STATE(681), 1, + aux_sym_template_arg_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27774] = 4, + ACTIONS(1247), 1, + anon_sym_SEMI, + ACTIONS(1287), 1, + anon_sym_COMMA, + STATE(639), 1, + aux_sym_enable_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27789] = 4, + ACTIONS(1210), 1, + sym_ident_pattern_token, + ACTIONS(1289), 1, + anon_sym_SEMI, + STATE(741), 1, + sym_software_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27804] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1291), 3, + anon_sym_RBRACE, + anon_sym_case, + anon_sym_default, + [27815] = 4, + ACTIONS(1289), 1, + anon_sym_SEMI, + ACTIONS(1293), 1, + anon_sym_COMMA, + STATE(654), 1, + aux_sym_software_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27830] = 4, + ACTIONS(1295), 1, + anon_sym_COMMA, + ACTIONS(1298), 1, + anon_sym_RPAREN, + STATE(686), 1, + aux_sym_param_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27845] = 2, + ACTIONS(1196), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27855] = 3, + ACTIONS(1300), 1, + anon_sym_SEMI, + ACTIONS(1302), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27867] = 2, + ACTIONS(1298), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27877] = 2, + ACTIONS(1304), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27887] = 2, + ACTIONS(1306), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27897] = 2, + ACTIONS(1285), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27907] = 2, + ACTIONS(1308), 2, + anon_sym_SEMI, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27917] = 2, + ACTIONS(1310), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27927] = 3, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(736), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27939] = 2, + ACTIONS(1280), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27949] = 3, + ACTIONS(1312), 1, + anon_sym_COMMA, + ACTIONS(1314), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27961] = 3, + ACTIONS(1316), 1, + anon_sym_COMMA, + ACTIONS(1318), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27973] = 2, + ACTIONS(1320), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27983] = 2, + ACTIONS(1322), 2, + anon_sym_SEMI, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27993] = 3, + ACTIONS(1275), 1, + sym_ident_pattern_token, + STATE(704), 1, + sym_diagnostic_name_token, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28005] = 3, + ACTIONS(740), 1, + anon_sym_LPAREN, + STATE(328), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28017] = 3, + ACTIONS(1324), 1, + anon_sym_SEMI, + ACTIONS(1326), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28029] = 2, + ACTIONS(1328), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28039] = 2, + ACTIONS(1330), 2, + anon_sym_SEMI, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28049] = 2, + ACTIONS(1332), 2, + anon_sym_SEMI, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28059] = 3, + ACTIONS(1334), 1, + anon_sym_SEMI, + ACTIONS(1336), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28071] = 2, + ACTIONS(1338), 2, + anon_sym_SEMI, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28081] = 3, + ACTIONS(1340), 1, + sym_ident_pattern_token, + STATE(731), 1, + sym_interpolate_type_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28093] = 3, + ACTIONS(1210), 1, + sym_ident_pattern_token, + STATE(741), 1, + sym_software_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28105] = 3, + ACTIONS(1206), 1, + sym_ident_pattern_token, + STATE(743), 1, + sym_enable_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28117] = 2, + ACTIONS(1342), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28127] = 2, + ACTIONS(1344), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28137] = 2, + ACTIONS(1346), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28147] = 3, + ACTIONS(1348), 1, + sym_ident_pattern_token, + STATE(723), 1, + sym_builtin_value_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28159] = 3, + ACTIONS(1350), 1, + anon_sym_COMMA, + ACTIONS(1352), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28171] = 3, + ACTIONS(1354), 1, + anon_sym_SEMI, + ACTIONS(1356), 1, + anon_sym_if, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28183] = 3, + ACTIONS(1358), 1, + anon_sym_LPAREN, + STATE(883), 1, + sym_diagnostic_control, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28195] = 3, + ACTIONS(1360), 1, + anon_sym_COMMA, + ACTIONS(1362), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28207] = 3, + ACTIONS(1364), 1, + anon_sym_COMMA, + ACTIONS(1366), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28219] = 2, + ACTIONS(1368), 2, + anon_sym_SEMI, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28229] = 2, + ACTIONS(1370), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28239] = 3, + ACTIONS(1372), 1, + anon_sym_COMMA, + ACTIONS(1374), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28251] = 3, + ACTIONS(1376), 1, + anon_sym_COMMA, + ACTIONS(1378), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28263] = 3, + ACTIONS(1380), 1, + anon_sym_COMMA, + ACTIONS(1382), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28275] = 2, + ACTIONS(1384), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28285] = 3, + ACTIONS(1386), 1, + anon_sym_COMMA, + ACTIONS(1388), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28297] = 3, + ACTIONS(1390), 1, + anon_sym_COMMA, + ACTIONS(1392), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28309] = 2, + ACTIONS(1394), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28319] = 2, + ACTIONS(1396), 2, + anon_sym_SEMI, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28329] = 3, + ACTIONS(1398), 1, + anon_sym_COMMA, + ACTIONS(1400), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28341] = 2, + ACTIONS(1402), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28351] = 2, + ACTIONS(1404), 2, + anon_sym_SEMI, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28361] = 2, + ACTIONS(1406), 2, + anon_sym_SEMI, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28371] = 3, + ACTIONS(1408), 1, + anon_sym_SEMI, + ACTIONS(1410), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28383] = 3, + ACTIONS(1412), 1, + anon_sym_LBRACE, + STATE(582), 1, + sym_struct_body_decl, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28395] = 3, + ACTIONS(1414), 1, + anon_sym_COMMA, + ACTIONS(1416), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28407] = 3, + ACTIONS(1358), 1, + anon_sym_LPAREN, + STATE(512), 1, + sym_diagnostic_control, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28419] = 3, + ACTIONS(1418), 1, + sym_ident_pattern_token, + STATE(830), 1, + sym_severity_control_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28431] = 3, + ACTIONS(1420), 1, + anon_sym_SEMI, + ACTIONS(1422), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28443] = 2, + ACTIONS(1214), 2, + anon_sym_SEMI, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28453] = 3, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(858), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28465] = 2, + ACTIONS(1188), 2, + anon_sym_SEMI, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28475] = 2, + ACTIONS(1131), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28485] = 3, + ACTIONS(1424), 1, + anon_sym_COMMA, + ACTIONS(1426), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28497] = 3, + ACTIONS(1428), 1, + anon_sym_COMMA, + ACTIONS(1430), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28509] = 3, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(867), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28521] = 2, + ACTIONS(1432), 2, + anon_sym_SEMI, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28531] = 2, + ACTIONS(1434), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28540] = 2, + ACTIONS(1436), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28549] = 2, + ACTIONS(1438), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28558] = 2, + ACTIONS(1440), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28567] = 2, + ACTIONS(1442), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28576] = 2, + ACTIONS(1444), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28585] = 2, + ACTIONS(1446), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28594] = 2, + ACTIONS(1448), 1, + anon_sym_COLON, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28603] = 2, + ACTIONS(1450), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28612] = 2, + ACTIONS(1452), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28621] = 2, + ACTIONS(1454), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28630] = 2, + ACTIONS(1456), 1, + anon_sym_COLON, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28639] = 2, + ACTIONS(1458), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28648] = 2, + ACTIONS(1460), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28657] = 2, + ACTIONS(1462), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28666] = 2, + ACTIONS(1464), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28675] = 2, + ACTIONS(1466), 1, + anon_sym_AMP_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28684] = 2, + ACTIONS(1468), 1, + anon_sym_PIPE_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28693] = 2, + ACTIONS(1470), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28702] = 2, + ACTIONS(694), 1, + anon_sym_if, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28711] = 2, + ACTIONS(1472), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28720] = 2, + ACTIONS(1474), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28729] = 2, + ACTIONS(1476), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28738] = 2, + ACTIONS(1478), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28747] = 2, + ACTIONS(1480), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28756] = 2, + ACTIONS(1482), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28765] = 2, + ACTIONS(1484), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28774] = 2, + ACTIONS(1486), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28783] = 2, + ACTIONS(1488), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28792] = 2, + ACTIONS(1490), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28801] = 2, + ACTIONS(1492), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28810] = 2, + ACTIONS(1494), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28819] = 2, + ACTIONS(1496), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28828] = 2, + ACTIONS(1498), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28837] = 2, + ACTIONS(1500), 1, + anon_sym_COLON, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28846] = 2, + ACTIONS(1502), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28855] = 2, + ACTIONS(1504), 1, + anon_sym_COLON, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28864] = 2, + ACTIONS(71), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28873] = 2, + ACTIONS(1506), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28882] = 2, + ACTIONS(1508), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28891] = 2, + ACTIONS(1510), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28900] = 2, + ACTIONS(1512), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28909] = 2, + ACTIONS(1514), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28918] = 2, + ACTIONS(1516), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28927] = 2, + ACTIONS(1518), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28936] = 2, + ACTIONS(1520), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28945] = 2, + ACTIONS(1522), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28954] = 2, + ACTIONS(1524), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28963] = 2, + ACTIONS(1354), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28972] = 2, + ACTIONS(1526), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28981] = 2, + ACTIONS(1528), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28990] = 2, + ACTIONS(1530), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28999] = 2, + ACTIONS(1532), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29008] = 2, + ACTIONS(1534), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29017] = 2, + ACTIONS(857), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29026] = 2, + ACTIONS(1536), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29035] = 2, + ACTIONS(1538), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29044] = 2, + ACTIONS(1540), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29053] = 2, + ACTIONS(1542), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29062] = 2, + ACTIONS(1544), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29071] = 2, + ACTIONS(1546), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29080] = 2, + ACTIONS(1548), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29089] = 2, + ACTIONS(1550), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29098] = 2, + ACTIONS(1552), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29107] = 2, + ACTIONS(1554), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29116] = 2, + ACTIONS(1556), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29125] = 2, + ACTIONS(73), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29134] = 2, + ACTIONS(1558), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29143] = 2, + ACTIONS(217), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29152] = 2, + ACTIONS(1560), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29161] = 2, + ACTIONS(1562), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29170] = 2, + ACTIONS(1564), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29179] = 2, + ACTIONS(1566), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29188] = 2, + ACTIONS(1568), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29197] = 2, + ACTIONS(1570), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29206] = 2, + ACTIONS(1572), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29215] = 2, + ACTIONS(1574), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29224] = 2, + ACTIONS(1576), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29233] = 2, + ACTIONS(1578), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29242] = 2, + ACTIONS(1580), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29251] = 2, + ACTIONS(1582), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29260] = 2, + ACTIONS(1584), 1, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29269] = 2, + ACTIONS(1586), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29278] = 2, + ACTIONS(1588), 1, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29287] = 2, + ACTIONS(1590), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29296] = 2, + ACTIONS(1592), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29305] = 2, + ACTIONS(1594), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29314] = 2, + ACTIONS(1596), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29323] = 2, + ACTIONS(1598), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29332] = 2, + ACTIONS(1600), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29341] = 2, + ACTIONS(139), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29350] = 2, + ACTIONS(1602), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29359] = 2, + ACTIONS(1604), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29368] = 2, + ACTIONS(1606), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29377] = 2, + ACTIONS(1608), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29386] = 2, + ACTIONS(41), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29395] = 2, + ACTIONS(1610), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29404] = 2, + ACTIONS(1612), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29413] = 2, + ACTIONS(1614), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29422] = 2, + ACTIONS(1616), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29431] = 2, + ACTIONS(1618), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29440] = 2, + ACTIONS(823), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29449] = 2, + ACTIONS(1620), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29458] = 2, + ACTIONS(1622), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29467] = 2, + ACTIONS(1624), 1, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29476] = 2, + ACTIONS(1626), 1, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29485] = 2, + ACTIONS(1628), 1, + anon_sym_CARET, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29494] = 2, + ACTIONS(1630), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29503] = 2, + ACTIONS(1632), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29512] = 2, + ACTIONS(1634), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29521] = 2, + ACTIONS(1636), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29530] = 2, + ACTIONS(1638), 1, + anon_sym_CARET, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29539] = 2, + ACTIONS(1640), 1, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29548] = 2, + ACTIONS(1642), 1, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29557] = 2, + ACTIONS(1644), 1, + anon_sym_PIPE_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29566] = 2, + ACTIONS(1646), 1, + anon_sym_AMP_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29575] = 2, + ACTIONS(1648), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29584] = 2, + ACTIONS(1650), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29593] = 2, + ACTIONS(1652), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29602] = 2, + ACTIONS(137), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29611] = 2, + ACTIONS(1410), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29620] = 2, + ACTIONS(821), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29629] = 2, + ACTIONS(1654), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29638] = 2, + ACTIONS(1656), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29647] = 2, + ACTIONS(1658), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29656] = 2, + ACTIONS(1660), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29665] = 2, + ACTIONS(1662), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29674] = 2, + ACTIONS(1664), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29683] = 2, + ACTIONS(1666), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29692] = 2, + ACTIONS(1668), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29701] = 2, + ACTIONS(1670), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29710] = 2, + ACTIONS(1672), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29719] = 2, + ACTIONS(1674), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29728] = 2, + ACTIONS(1676), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29737] = 2, + ACTIONS(1678), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29746] = 2, + ACTIONS(1680), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29755] = 2, + ACTIONS(1682), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29764] = 2, + ACTIONS(1684), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29773] = 2, + ACTIONS(1686), 1, + ts_builtin_sym_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29782] = 2, + ACTIONS(1688), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29791] = 2, + ACTIONS(1690), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29800] = 2, + ACTIONS(1692), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29809] = 2, + ACTIONS(1694), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29818] = 2, + ACTIONS(1696), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29827] = 2, + ACTIONS(1698), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29836] = 2, + ACTIONS(1182), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29845] = 2, + ACTIONS(877), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, +}; + +static const uint32_t ts_small_parse_table_map[] = { + [SMALL_STATE(17)] = 0, + [SMALL_STATE(18)] = 125, + [SMALL_STATE(19)] = 250, + [SMALL_STATE(20)] = 373, + [SMALL_STATE(21)] = 493, + [SMALL_STATE(22)] = 613, + [SMALL_STATE(23)] = 733, + [SMALL_STATE(24)] = 853, + [SMALL_STATE(25)] = 973, + [SMALL_STATE(26)] = 1093, + [SMALL_STATE(27)] = 1213, + [SMALL_STATE(28)] = 1333, + [SMALL_STATE(29)] = 1453, + [SMALL_STATE(30)] = 1573, + [SMALL_STATE(31)] = 1693, + [SMALL_STATE(32)] = 1813, + [SMALL_STATE(33)] = 1933, + [SMALL_STATE(34)] = 2053, + [SMALL_STATE(35)] = 2173, + [SMALL_STATE(36)] = 2293, + [SMALL_STATE(37)] = 2413, + [SMALL_STATE(38)] = 2533, + [SMALL_STATE(39)] = 2653, + [SMALL_STATE(40)] = 2773, + [SMALL_STATE(41)] = 2893, + [SMALL_STATE(42)] = 3013, + [SMALL_STATE(43)] = 3133, + [SMALL_STATE(44)] = 3250, + [SMALL_STATE(45)] = 3367, + [SMALL_STATE(46)] = 3484, + [SMALL_STATE(47)] = 3601, + [SMALL_STATE(48)] = 3718, + [SMALL_STATE(49)] = 3835, + [SMALL_STATE(50)] = 3952, + [SMALL_STATE(51)] = 4069, + [SMALL_STATE(52)] = 4183, + [SMALL_STATE(53)] = 4297, + [SMALL_STATE(54)] = 4411, + [SMALL_STATE(55)] = 4525, + [SMALL_STATE(56)] = 4619, + [SMALL_STATE(57)] = 4733, + [SMALL_STATE(58)] = 4847, + [SMALL_STATE(59)] = 4961, + [SMALL_STATE(60)] = 5075, + [SMALL_STATE(61)] = 5189, + [SMALL_STATE(62)] = 5303, + [SMALL_STATE(63)] = 5417, + [SMALL_STATE(64)] = 5531, + [SMALL_STATE(65)] = 5645, + [SMALL_STATE(66)] = 5759, + [SMALL_STATE(67)] = 5873, + [SMALL_STATE(68)] = 5987, + [SMALL_STATE(69)] = 6101, + [SMALL_STATE(70)] = 6215, + [SMALL_STATE(71)] = 6329, + [SMALL_STATE(72)] = 6443, + [SMALL_STATE(73)] = 6557, + [SMALL_STATE(74)] = 6671, + [SMALL_STATE(75)] = 6785, + [SMALL_STATE(76)] = 6899, + [SMALL_STATE(77)] = 7013, + [SMALL_STATE(78)] = 7127, + [SMALL_STATE(79)] = 7241, + [SMALL_STATE(80)] = 7355, + [SMALL_STATE(81)] = 7469, + [SMALL_STATE(82)] = 7583, + [SMALL_STATE(83)] = 7697, + [SMALL_STATE(84)] = 7811, + [SMALL_STATE(85)] = 7925, + [SMALL_STATE(86)] = 8039, + [SMALL_STATE(87)] = 8153, + [SMALL_STATE(88)] = 8267, + [SMALL_STATE(89)] = 8381, + [SMALL_STATE(90)] = 8495, + [SMALL_STATE(91)] = 8609, + [SMALL_STATE(92)] = 8723, + [SMALL_STATE(93)] = 8837, + [SMALL_STATE(94)] = 8951, + [SMALL_STATE(95)] = 9065, + [SMALL_STATE(96)] = 9179, + [SMALL_STATE(97)] = 9293, + [SMALL_STATE(98)] = 9386, + [SMALL_STATE(99)] = 9479, + [SMALL_STATE(100)] = 9572, + [SMALL_STATE(101)] = 9665, + [SMALL_STATE(102)] = 9741, + [SMALL_STATE(103)] = 9817, + [SMALL_STATE(104)] = 9907, + [SMALL_STATE(105)] = 9997, + [SMALL_STATE(106)] = 10073, + [SMALL_STATE(107)] = 10163, + [SMALL_STATE(108)] = 10253, + [SMALL_STATE(109)] = 10337, + [SMALL_STATE(110)] = 10421, + [SMALL_STATE(111)] = 10505, + [SMALL_STATE(112)] = 10589, + [SMALL_STATE(113)] = 10673, + [SMALL_STATE(114)] = 10757, + [SMALL_STATE(115)] = 10838, + [SMALL_STATE(116)] = 10919, + [SMALL_STATE(117)] = 11000, + [SMALL_STATE(118)] = 11081, + [SMALL_STATE(119)] = 11162, + [SMALL_STATE(120)] = 11243, + [SMALL_STATE(121)] = 11324, + [SMALL_STATE(122)] = 11405, + [SMALL_STATE(123)] = 11486, + [SMALL_STATE(124)] = 11567, + [SMALL_STATE(125)] = 11648, + [SMALL_STATE(126)] = 11729, + [SMALL_STATE(127)] = 11810, + [SMALL_STATE(128)] = 11891, + [SMALL_STATE(129)] = 11972, + [SMALL_STATE(130)] = 12053, + [SMALL_STATE(131)] = 12134, + [SMALL_STATE(132)] = 12215, + [SMALL_STATE(133)] = 12296, + [SMALL_STATE(134)] = 12377, + [SMALL_STATE(135)] = 12458, + [SMALL_STATE(136)] = 12539, + [SMALL_STATE(137)] = 12620, + [SMALL_STATE(138)] = 12701, + [SMALL_STATE(139)] = 12782, + [SMALL_STATE(140)] = 12863, + [SMALL_STATE(141)] = 12944, + [SMALL_STATE(142)] = 13025, + [SMALL_STATE(143)] = 13066, + [SMALL_STATE(144)] = 13107, + [SMALL_STATE(145)] = 13148, + [SMALL_STATE(146)] = 13192, + [SMALL_STATE(147)] = 13238, + [SMALL_STATE(148)] = 13281, + [SMALL_STATE(149)] = 13319, + [SMALL_STATE(150)] = 13363, + [SMALL_STATE(151)] = 13401, + [SMALL_STATE(152)] = 13445, + [SMALL_STATE(153)] = 13489, + [SMALL_STATE(154)] = 13526, + [SMALL_STATE(155)] = 13563, + [SMALL_STATE(156)] = 13600, + [SMALL_STATE(157)] = 13637, + [SMALL_STATE(158)] = 13674, + [SMALL_STATE(159)] = 13711, + [SMALL_STATE(160)] = 13748, + [SMALL_STATE(161)] = 13785, + [SMALL_STATE(162)] = 13822, + [SMALL_STATE(163)] = 13859, + [SMALL_STATE(164)] = 13896, + [SMALL_STATE(165)] = 13933, + [SMALL_STATE(166)] = 13970, + [SMALL_STATE(167)] = 14007, + [SMALL_STATE(168)] = 14050, + [SMALL_STATE(169)] = 14103, + [SMALL_STATE(170)] = 14140, + [SMALL_STATE(171)] = 14183, + [SMALL_STATE(172)] = 14226, + [SMALL_STATE(173)] = 14269, + [SMALL_STATE(174)] = 14306, + [SMALL_STATE(175)] = 14343, + [SMALL_STATE(176)] = 14383, + [SMALL_STATE(177)] = 14430, + [SMALL_STATE(178)] = 14477, + [SMALL_STATE(179)] = 14516, + [SMALL_STATE(180)] = 14559, + [SMALL_STATE(181)] = 14594, + [SMALL_STATE(182)] = 14629, + [SMALL_STATE(183)] = 14664, + [SMALL_STATE(184)] = 14699, + [SMALL_STATE(185)] = 14734, + [SMALL_STATE(186)] = 14773, + [SMALL_STATE(187)] = 14817, + [SMALL_STATE(188)] = 14851, + [SMALL_STATE(189)] = 14889, + [SMALL_STATE(190)] = 14927, + [SMALL_STATE(191)] = 14971, + [SMALL_STATE(192)] = 15005, + [SMALL_STATE(193)] = 15049, + [SMALL_STATE(194)] = 15093, + [SMALL_STATE(195)] = 15126, + [SMALL_STATE(196)] = 15165, + [SMALL_STATE(197)] = 15206, + [SMALL_STATE(198)] = 15239, + [SMALL_STATE(199)] = 15272, + [SMALL_STATE(200)] = 15305, + [SMALL_STATE(201)] = 15342, + [SMALL_STATE(202)] = 15375, + [SMALL_STATE(203)] = 15416, + [SMALL_STATE(204)] = 15449, + [SMALL_STATE(205)] = 15490, + [SMALL_STATE(206)] = 15531, + [SMALL_STATE(207)] = 15572, + [SMALL_STATE(208)] = 15611, + [SMALL_STATE(209)] = 15652, + [SMALL_STATE(210)] = 15685, + [SMALL_STATE(211)] = 15718, + [SMALL_STATE(212)] = 15751, + [SMALL_STATE(213)] = 15784, + [SMALL_STATE(214)] = 15823, + [SMALL_STATE(215)] = 15864, + [SMALL_STATE(216)] = 15903, + [SMALL_STATE(217)] = 15936, + [SMALL_STATE(218)] = 15969, + [SMALL_STATE(219)] = 16002, + [SMALL_STATE(220)] = 16035, + [SMALL_STATE(221)] = 16068, + [SMALL_STATE(222)] = 16101, + [SMALL_STATE(223)] = 16142, + [SMALL_STATE(224)] = 16175, + [SMALL_STATE(225)] = 16214, + [SMALL_STATE(226)] = 16277, + [SMALL_STATE(227)] = 16318, + [SMALL_STATE(228)] = 16351, + [SMALL_STATE(229)] = 16390, + [SMALL_STATE(230)] = 16423, + [SMALL_STATE(231)] = 16456, + [SMALL_STATE(232)] = 16489, + [SMALL_STATE(233)] = 16530, + [SMALL_STATE(234)] = 16563, + [SMALL_STATE(235)] = 16596, + [SMALL_STATE(236)] = 16659, + [SMALL_STATE(237)] = 16691, + [SMALL_STATE(238)] = 16723, + [SMALL_STATE(239)] = 16761, + [SMALL_STATE(240)] = 16799, + [SMALL_STATE(241)] = 16833, + [SMALL_STATE(242)] = 16871, + [SMALL_STATE(243)] = 16903, + [SMALL_STATE(244)] = 16935, + [SMALL_STATE(245)] = 16967, + [SMALL_STATE(246)] = 16999, + [SMALL_STATE(247)] = 17037, + [SMALL_STATE(248)] = 17069, + [SMALL_STATE(249)] = 17107, + [SMALL_STATE(250)] = 17139, + [SMALL_STATE(251)] = 17171, + [SMALL_STATE(252)] = 17203, + [SMALL_STATE(253)] = 17235, + [SMALL_STATE(254)] = 17273, + [SMALL_STATE(255)] = 17311, + [SMALL_STATE(256)] = 17349, + [SMALL_STATE(257)] = 17387, + [SMALL_STATE(258)] = 17419, + [SMALL_STATE(259)] = 17451, + [SMALL_STATE(260)] = 17489, + [SMALL_STATE(261)] = 17521, + [SMALL_STATE(262)] = 17559, + [SMALL_STATE(263)] = 17591, + [SMALL_STATE(264)] = 17623, + [SMALL_STATE(265)] = 17661, + [SMALL_STATE(266)] = 17693, + [SMALL_STATE(267)] = 17725, + [SMALL_STATE(268)] = 17757, + [SMALL_STATE(269)] = 17789, + [SMALL_STATE(270)] = 17821, + [SMALL_STATE(271)] = 17853, + [SMALL_STATE(272)] = 17885, + [SMALL_STATE(273)] = 17917, + [SMALL_STATE(274)] = 17949, + [SMALL_STATE(275)] = 17981, + [SMALL_STATE(276)] = 18019, + [SMALL_STATE(277)] = 18051, + [SMALL_STATE(278)] = 18089, + [SMALL_STATE(279)] = 18121, + [SMALL_STATE(280)] = 18153, + [SMALL_STATE(281)] = 18185, + [SMALL_STATE(282)] = 18223, + [SMALL_STATE(283)] = 18255, + [SMALL_STATE(284)] = 18290, + [SMALL_STATE(285)] = 18325, + [SMALL_STATE(286)] = 18360, + [SMALL_STATE(287)] = 18395, + [SMALL_STATE(288)] = 18430, + [SMALL_STATE(289)] = 18465, + [SMALL_STATE(290)] = 18500, + [SMALL_STATE(291)] = 18535, + [SMALL_STATE(292)] = 18570, + [SMALL_STATE(293)] = 18605, + [SMALL_STATE(294)] = 18636, + [SMALL_STATE(295)] = 18666, + [SMALL_STATE(296)] = 18700, + [SMALL_STATE(297)] = 18730, + [SMALL_STATE(298)] = 18764, + [SMALL_STATE(299)] = 18794, + [SMALL_STATE(300)] = 18824, + [SMALL_STATE(301)] = 18854, + [SMALL_STATE(302)] = 18884, + [SMALL_STATE(303)] = 18918, + [SMALL_STATE(304)] = 18948, + [SMALL_STATE(305)] = 18978, + [SMALL_STATE(306)] = 19008, + [SMALL_STATE(307)] = 19038, + [SMALL_STATE(308)] = 19068, + [SMALL_STATE(309)] = 19098, + [SMALL_STATE(310)] = 19128, + [SMALL_STATE(311)] = 19166, + [SMALL_STATE(312)] = 19196, + [SMALL_STATE(313)] = 19226, + [SMALL_STATE(314)] = 19255, + [SMALL_STATE(315)] = 19290, + [SMALL_STATE(316)] = 19325, + [SMALL_STATE(317)] = 19354, + [SMALL_STATE(318)] = 19389, + [SMALL_STATE(319)] = 19424, + [SMALL_STATE(320)] = 19457, + [SMALL_STATE(321)] = 19492, + [SMALL_STATE(322)] = 19525, + [SMALL_STATE(323)] = 19560, + [SMALL_STATE(324)] = 19588, + [SMALL_STATE(325)] = 19616, + [SMALL_STATE(326)] = 19644, + [SMALL_STATE(327)] = 19672, + [SMALL_STATE(328)] = 19710, + [SMALL_STATE(329)] = 19738, + [SMALL_STATE(330)] = 19766, + [SMALL_STATE(331)] = 19826, + [SMALL_STATE(332)] = 19854, + [SMALL_STATE(333)] = 19882, + [SMALL_STATE(334)] = 19914, + [SMALL_STATE(335)] = 19948, + [SMALL_STATE(336)] = 19978, + [SMALL_STATE(337)] = 20006, + [SMALL_STATE(338)] = 20034, + [SMALL_STATE(339)] = 20062, + [SMALL_STATE(340)] = 20090, + [SMALL_STATE(341)] = 20118, + [SMALL_STATE(342)] = 20150, + [SMALL_STATE(343)] = 20178, + [SMALL_STATE(344)] = 20206, + [SMALL_STATE(345)] = 20234, + [SMALL_STATE(346)] = 20262, + [SMALL_STATE(347)] = 20290, + [SMALL_STATE(348)] = 20318, + [SMALL_STATE(349)] = 20346, + [SMALL_STATE(350)] = 20374, + [SMALL_STATE(351)] = 20402, + [SMALL_STATE(352)] = 20430, + [SMALL_STATE(353)] = 20458, + [SMALL_STATE(354)] = 20486, + [SMALL_STATE(355)] = 20514, + [SMALL_STATE(356)] = 20542, + [SMALL_STATE(357)] = 20576, + [SMALL_STATE(358)] = 20604, + [SMALL_STATE(359)] = 20632, + [SMALL_STATE(360)] = 20660, + [SMALL_STATE(361)] = 20694, + [SMALL_STATE(362)] = 20721, + [SMALL_STATE(363)] = 20748, + [SMALL_STATE(364)] = 20797, + [SMALL_STATE(365)] = 20824, + [SMALL_STATE(366)] = 20851, + [SMALL_STATE(367)] = 20878, + [SMALL_STATE(368)] = 20905, + [SMALL_STATE(369)] = 20954, + [SMALL_STATE(370)] = 20983, + [SMALL_STATE(371)] = 21010, + [SMALL_STATE(372)] = 21037, + [SMALL_STATE(373)] = 21064, + [SMALL_STATE(374)] = 21097, + [SMALL_STATE(375)] = 21124, + [SMALL_STATE(376)] = 21151, + [SMALL_STATE(377)] = 21178, + [SMALL_STATE(378)] = 21205, + [SMALL_STATE(379)] = 21232, + [SMALL_STATE(380)] = 21265, + [SMALL_STATE(381)] = 21292, + [SMALL_STATE(382)] = 21325, + [SMALL_STATE(383)] = 21352, + [SMALL_STATE(384)] = 21401, + [SMALL_STATE(385)] = 21428, + [SMALL_STATE(386)] = 21454, + [SMALL_STATE(387)] = 21480, + [SMALL_STATE(388)] = 21506, + [SMALL_STATE(389)] = 21536, + [SMALL_STATE(390)] = 21566, + [SMALL_STATE(391)] = 21592, + [SMALL_STATE(392)] = 21618, + [SMALL_STATE(393)] = 21648, + [SMALL_STATE(394)] = 21674, + [SMALL_STATE(395)] = 21700, + [SMALL_STATE(396)] = 21726, + [SMALL_STATE(397)] = 21752, + [SMALL_STATE(398)] = 21782, + [SMALL_STATE(399)] = 21808, + [SMALL_STATE(400)] = 21834, + [SMALL_STATE(401)] = 21860, + [SMALL_STATE(402)] = 21886, + [SMALL_STATE(403)] = 21912, + [SMALL_STATE(404)] = 21938, + [SMALL_STATE(405)] = 21964, + [SMALL_STATE(406)] = 21994, + [SMALL_STATE(407)] = 22024, + [SMALL_STATE(408)] = 22050, + [SMALL_STATE(409)] = 22076, + [SMALL_STATE(410)] = 22102, + [SMALL_STATE(411)] = 22128, + [SMALL_STATE(412)] = 22154, + [SMALL_STATE(413)] = 22180, + [SMALL_STATE(414)] = 22208, + [SMALL_STATE(415)] = 22234, + [SMALL_STATE(416)] = 22260, + [SMALL_STATE(417)] = 22286, + [SMALL_STATE(418)] = 22316, + [SMALL_STATE(419)] = 22339, + [SMALL_STATE(420)] = 22364, + [SMALL_STATE(421)] = 22389, + [SMALL_STATE(422)] = 22418, + [SMALL_STATE(423)] = 22443, + [SMALL_STATE(424)] = 22468, + [SMALL_STATE(425)] = 22493, + [SMALL_STATE(426)] = 22522, + [SMALL_STATE(427)] = 22551, + [SMALL_STATE(428)] = 22574, + [SMALL_STATE(429)] = 22601, + [SMALL_STATE(430)] = 22626, + [SMALL_STATE(431)] = 22649, + [SMALL_STATE(432)] = 22674, + [SMALL_STATE(433)] = 22697, + [SMALL_STATE(434)] = 22720, + [SMALL_STATE(435)] = 22745, + [SMALL_STATE(436)] = 22774, + [SMALL_STATE(437)] = 22798, + [SMALL_STATE(438)] = 22828, + [SMALL_STATE(439)] = 22852, + [SMALL_STATE(440)] = 22876, + [SMALL_STATE(441)] = 22906, + [SMALL_STATE(442)] = 22930, + [SMALL_STATE(443)] = 22960, + [SMALL_STATE(444)] = 22984, + [SMALL_STATE(445)] = 23014, + [SMALL_STATE(446)] = 23038, + [SMALL_STATE(447)] = 23062, + [SMALL_STATE(448)] = 23090, + [SMALL_STATE(449)] = 23114, + [SMALL_STATE(450)] = 23142, + [SMALL_STATE(451)] = 23170, + [SMALL_STATE(452)] = 23200, + [SMALL_STATE(453)] = 23230, + [SMALL_STATE(454)] = 23254, + [SMALL_STATE(455)] = 23278, + [SMALL_STATE(456)] = 23302, + [SMALL_STATE(457)] = 23326, + [SMALL_STATE(458)] = 23356, + [SMALL_STATE(459)] = 23379, + [SMALL_STATE(460)] = 23404, + [SMALL_STATE(461)] = 23427, + [SMALL_STATE(462)] = 23450, + [SMALL_STATE(463)] = 23471, + [SMALL_STATE(464)] = 23494, + [SMALL_STATE(465)] = 23517, + [SMALL_STATE(466)] = 23540, + [SMALL_STATE(467)] = 23567, + [SMALL_STATE(468)] = 23590, + [SMALL_STATE(469)] = 23613, + [SMALL_STATE(470)] = 23636, + [SMALL_STATE(471)] = 23659, + [SMALL_STATE(472)] = 23682, + [SMALL_STATE(473)] = 23705, + [SMALL_STATE(474)] = 23728, + [SMALL_STATE(475)] = 23751, + [SMALL_STATE(476)] = 23774, + [SMALL_STATE(477)] = 23797, + [SMALL_STATE(478)] = 23820, + [SMALL_STATE(479)] = 23843, + [SMALL_STATE(480)] = 23870, + [SMALL_STATE(481)] = 23893, + [SMALL_STATE(482)] = 23916, + [SMALL_STATE(483)] = 23939, + [SMALL_STATE(484)] = 23960, + [SMALL_STATE(485)] = 23983, + [SMALL_STATE(486)] = 24006, + [SMALL_STATE(487)] = 24029, + [SMALL_STATE(488)] = 24052, + [SMALL_STATE(489)] = 24075, + [SMALL_STATE(490)] = 24098, + [SMALL_STATE(491)] = 24121, + [SMALL_STATE(492)] = 24144, + [SMALL_STATE(493)] = 24165, + [SMALL_STATE(494)] = 24188, + [SMALL_STATE(495)] = 24211, + [SMALL_STATE(496)] = 24234, + [SMALL_STATE(497)] = 24257, + [SMALL_STATE(498)] = 24280, + [SMALL_STATE(499)] = 24302, + [SMALL_STATE(500)] = 24324, + [SMALL_STATE(501)] = 24352, + [SMALL_STATE(502)] = 24374, + [SMALL_STATE(503)] = 24396, + [SMALL_STATE(504)] = 24420, + [SMALL_STATE(505)] = 24448, + [SMALL_STATE(506)] = 24476, + [SMALL_STATE(507)] = 24497, + [SMALL_STATE(508)] = 24518, + [SMALL_STATE(509)] = 24541, + [SMALL_STATE(510)] = 24564, + [SMALL_STATE(511)] = 24585, + [SMALL_STATE(512)] = 24606, + [SMALL_STATE(513)] = 24627, + [SMALL_STATE(514)] = 24648, + [SMALL_STATE(515)] = 24669, + [SMALL_STATE(516)] = 24690, + [SMALL_STATE(517)] = 24713, + [SMALL_STATE(518)] = 24736, + [SMALL_STATE(519)] = 24759, + [SMALL_STATE(520)] = 24782, + [SMALL_STATE(521)] = 24803, + [SMALL_STATE(522)] = 24824, + [SMALL_STATE(523)] = 24847, + [SMALL_STATE(524)] = 24868, + [SMALL_STATE(525)] = 24889, + [SMALL_STATE(526)] = 24910, + [SMALL_STATE(527)] = 24931, + [SMALL_STATE(528)] = 24952, + [SMALL_STATE(529)] = 24973, + [SMALL_STATE(530)] = 24994, + [SMALL_STATE(531)] = 25015, + [SMALL_STATE(532)] = 25036, + [SMALL_STATE(533)] = 25057, + [SMALL_STATE(534)] = 25078, + [SMALL_STATE(535)] = 25099, + [SMALL_STATE(536)] = 25120, + [SMALL_STATE(537)] = 25141, + [SMALL_STATE(538)] = 25162, + [SMALL_STATE(539)] = 25183, + [SMALL_STATE(540)] = 25204, + [SMALL_STATE(541)] = 25225, + [SMALL_STATE(542)] = 25246, + [SMALL_STATE(543)] = 25267, + [SMALL_STATE(544)] = 25288, + [SMALL_STATE(545)] = 25309, + [SMALL_STATE(546)] = 25330, + [SMALL_STATE(547)] = 25351, + [SMALL_STATE(548)] = 25374, + [SMALL_STATE(549)] = 25395, + [SMALL_STATE(550)] = 25416, + [SMALL_STATE(551)] = 25439, + [SMALL_STATE(552)] = 25462, + [SMALL_STATE(553)] = 25483, + [SMALL_STATE(554)] = 25506, + [SMALL_STATE(555)] = 25527, + [SMALL_STATE(556)] = 25548, + [SMALL_STATE(557)] = 25569, + [SMALL_STATE(558)] = 25590, + [SMALL_STATE(559)] = 25611, + [SMALL_STATE(560)] = 25632, + [SMALL_STATE(561)] = 25655, + [SMALL_STATE(562)] = 25676, + [SMALL_STATE(563)] = 25697, + [SMALL_STATE(564)] = 25718, + [SMALL_STATE(565)] = 25739, + [SMALL_STATE(566)] = 25762, + [SMALL_STATE(567)] = 25783, + [SMALL_STATE(568)] = 25804, + [SMALL_STATE(569)] = 25825, + [SMALL_STATE(570)] = 25846, + [SMALL_STATE(571)] = 25867, + [SMALL_STATE(572)] = 25888, + [SMALL_STATE(573)] = 25909, + [SMALL_STATE(574)] = 25930, + [SMALL_STATE(575)] = 25951, + [SMALL_STATE(576)] = 25972, + [SMALL_STATE(577)] = 25993, + [SMALL_STATE(578)] = 26014, + [SMALL_STATE(579)] = 26035, + [SMALL_STATE(580)] = 26055, + [SMALL_STATE(581)] = 26073, + [SMALL_STATE(582)] = 26097, + [SMALL_STATE(583)] = 26117, + [SMALL_STATE(584)] = 26137, + [SMALL_STATE(585)] = 26157, + [SMALL_STATE(586)] = 26177, + [SMALL_STATE(587)] = 26197, + [SMALL_STATE(588)] = 26219, + [SMALL_STATE(589)] = 26239, + [SMALL_STATE(590)] = 26263, + [SMALL_STATE(591)] = 26283, + [SMALL_STATE(592)] = 26302, + [SMALL_STATE(593)] = 26321, + [SMALL_STATE(594)] = 26344, + [SMALL_STATE(595)] = 26363, + [SMALL_STATE(596)] = 26382, + [SMALL_STATE(597)] = 26401, + [SMALL_STATE(598)] = 26418, + [SMALL_STATE(599)] = 26437, + [SMALL_STATE(600)] = 26458, + [SMALL_STATE(601)] = 26481, + [SMALL_STATE(602)] = 26500, + [SMALL_STATE(603)] = 26519, + [SMALL_STATE(604)] = 26536, + [SMALL_STATE(605)] = 26554, + [SMALL_STATE(606)] = 26572, + [SMALL_STATE(607)] = 26590, + [SMALL_STATE(608)] = 26608, + [SMALL_STATE(609)] = 26626, + [SMALL_STATE(610)] = 26651, + [SMALL_STATE(611)] = 26676, + [SMALL_STATE(612)] = 26701, + [SMALL_STATE(613)] = 26720, + [SMALL_STATE(614)] = 26743, + [SMALL_STATE(615)] = 26766, + [SMALL_STATE(616)] = 26781, + [SMALL_STATE(617)] = 26806, + [SMALL_STATE(618)] = 26829, + [SMALL_STATE(619)] = 26847, + [SMALL_STATE(620)] = 26867, + [SMALL_STATE(621)] = 26887, + [SMALL_STATE(622)] = 26904, + [SMALL_STATE(623)] = 26925, + [SMALL_STATE(624)] = 26942, + [SMALL_STATE(625)] = 26959, + [SMALL_STATE(626)] = 26972, + [SMALL_STATE(627)] = 26985, + [SMALL_STATE(628)] = 26997, + [SMALL_STATE(629)] = 27013, + [SMALL_STATE(630)] = 27031, + [SMALL_STATE(631)] = 27049, + [SMALL_STATE(632)] = 27067, + [SMALL_STATE(633)] = 27079, + [SMALL_STATE(634)] = 27091, + [SMALL_STATE(635)] = 27109, + [SMALL_STATE(636)] = 27121, + [SMALL_STATE(637)] = 27139, + [SMALL_STATE(638)] = 27157, + [SMALL_STATE(639)] = 27175, + [SMALL_STATE(640)] = 27190, + [SMALL_STATE(641)] = 27205, + [SMALL_STATE(642)] = 27220, + [SMALL_STATE(643)] = 27233, + [SMALL_STATE(644)] = 27246, + [SMALL_STATE(645)] = 27259, + [SMALL_STATE(646)] = 27272, + [SMALL_STATE(647)] = 27285, + [SMALL_STATE(648)] = 27298, + [SMALL_STATE(649)] = 27313, + [SMALL_STATE(650)] = 27328, + [SMALL_STATE(651)] = 27343, + [SMALL_STATE(652)] = 27358, + [SMALL_STATE(653)] = 27373, + [SMALL_STATE(654)] = 27388, + [SMALL_STATE(655)] = 27403, + [SMALL_STATE(656)] = 27418, + [SMALL_STATE(657)] = 27429, + [SMALL_STATE(658)] = 27444, + [SMALL_STATE(659)] = 27457, + [SMALL_STATE(660)] = 27472, + [SMALL_STATE(661)] = 27483, + [SMALL_STATE(662)] = 27496, + [SMALL_STATE(663)] = 27507, + [SMALL_STATE(664)] = 27518, + [SMALL_STATE(665)] = 27533, + [SMALL_STATE(666)] = 27548, + [SMALL_STATE(667)] = 27563, + [SMALL_STATE(668)] = 27578, + [SMALL_STATE(669)] = 27593, + [SMALL_STATE(670)] = 27608, + [SMALL_STATE(671)] = 27623, + [SMALL_STATE(672)] = 27638, + [SMALL_STATE(673)] = 27651, + [SMALL_STATE(674)] = 27662, + [SMALL_STATE(675)] = 27677, + [SMALL_STATE(676)] = 27692, + [SMALL_STATE(677)] = 27703, + [SMALL_STATE(678)] = 27714, + [SMALL_STATE(679)] = 27729, + [SMALL_STATE(680)] = 27744, + [SMALL_STATE(681)] = 27759, + [SMALL_STATE(682)] = 27774, + [SMALL_STATE(683)] = 27789, + [SMALL_STATE(684)] = 27804, + [SMALL_STATE(685)] = 27815, + [SMALL_STATE(686)] = 27830, + [SMALL_STATE(687)] = 27845, + [SMALL_STATE(688)] = 27855, + [SMALL_STATE(689)] = 27867, + [SMALL_STATE(690)] = 27877, + [SMALL_STATE(691)] = 27887, + [SMALL_STATE(692)] = 27897, + [SMALL_STATE(693)] = 27907, + [SMALL_STATE(694)] = 27917, + [SMALL_STATE(695)] = 27927, + [SMALL_STATE(696)] = 27939, + [SMALL_STATE(697)] = 27949, + [SMALL_STATE(698)] = 27961, + [SMALL_STATE(699)] = 27973, + [SMALL_STATE(700)] = 27983, + [SMALL_STATE(701)] = 27993, + [SMALL_STATE(702)] = 28005, + [SMALL_STATE(703)] = 28017, + [SMALL_STATE(704)] = 28029, + [SMALL_STATE(705)] = 28039, + [SMALL_STATE(706)] = 28049, + [SMALL_STATE(707)] = 28059, + [SMALL_STATE(708)] = 28071, + [SMALL_STATE(709)] = 28081, + [SMALL_STATE(710)] = 28093, + [SMALL_STATE(711)] = 28105, + [SMALL_STATE(712)] = 28117, + [SMALL_STATE(713)] = 28127, + [SMALL_STATE(714)] = 28137, + [SMALL_STATE(715)] = 28147, + [SMALL_STATE(716)] = 28159, + [SMALL_STATE(717)] = 28171, + [SMALL_STATE(718)] = 28183, + [SMALL_STATE(719)] = 28195, + [SMALL_STATE(720)] = 28207, + [SMALL_STATE(721)] = 28219, + [SMALL_STATE(722)] = 28229, + [SMALL_STATE(723)] = 28239, + [SMALL_STATE(724)] = 28251, + [SMALL_STATE(725)] = 28263, + [SMALL_STATE(726)] = 28275, + [SMALL_STATE(727)] = 28285, + [SMALL_STATE(728)] = 28297, + [SMALL_STATE(729)] = 28309, + [SMALL_STATE(730)] = 28319, + [SMALL_STATE(731)] = 28329, + [SMALL_STATE(732)] = 28341, + [SMALL_STATE(733)] = 28351, + [SMALL_STATE(734)] = 28361, + [SMALL_STATE(735)] = 28371, + [SMALL_STATE(736)] = 28383, + [SMALL_STATE(737)] = 28395, + [SMALL_STATE(738)] = 28407, + [SMALL_STATE(739)] = 28419, + [SMALL_STATE(740)] = 28431, + [SMALL_STATE(741)] = 28443, + [SMALL_STATE(742)] = 28453, + [SMALL_STATE(743)] = 28465, + [SMALL_STATE(744)] = 28475, + [SMALL_STATE(745)] = 28485, + [SMALL_STATE(746)] = 28497, + [SMALL_STATE(747)] = 28509, + [SMALL_STATE(748)] = 28521, + [SMALL_STATE(749)] = 28531, + [SMALL_STATE(750)] = 28540, + [SMALL_STATE(751)] = 28549, + [SMALL_STATE(752)] = 28558, + [SMALL_STATE(753)] = 28567, + [SMALL_STATE(754)] = 28576, + [SMALL_STATE(755)] = 28585, + [SMALL_STATE(756)] = 28594, + [SMALL_STATE(757)] = 28603, + [SMALL_STATE(758)] = 28612, + [SMALL_STATE(759)] = 28621, + [SMALL_STATE(760)] = 28630, + [SMALL_STATE(761)] = 28639, + [SMALL_STATE(762)] = 28648, + [SMALL_STATE(763)] = 28657, + [SMALL_STATE(764)] = 28666, + [SMALL_STATE(765)] = 28675, + [SMALL_STATE(766)] = 28684, + [SMALL_STATE(767)] = 28693, + [SMALL_STATE(768)] = 28702, + [SMALL_STATE(769)] = 28711, + [SMALL_STATE(770)] = 28720, + [SMALL_STATE(771)] = 28729, + [SMALL_STATE(772)] = 28738, + [SMALL_STATE(773)] = 28747, + [SMALL_STATE(774)] = 28756, + [SMALL_STATE(775)] = 28765, + [SMALL_STATE(776)] = 28774, + [SMALL_STATE(777)] = 28783, + [SMALL_STATE(778)] = 28792, + [SMALL_STATE(779)] = 28801, + [SMALL_STATE(780)] = 28810, + [SMALL_STATE(781)] = 28819, + [SMALL_STATE(782)] = 28828, + [SMALL_STATE(783)] = 28837, + [SMALL_STATE(784)] = 28846, + [SMALL_STATE(785)] = 28855, + [SMALL_STATE(786)] = 28864, + [SMALL_STATE(787)] = 28873, + [SMALL_STATE(788)] = 28882, + [SMALL_STATE(789)] = 28891, + [SMALL_STATE(790)] = 28900, + [SMALL_STATE(791)] = 28909, + [SMALL_STATE(792)] = 28918, + [SMALL_STATE(793)] = 28927, + [SMALL_STATE(794)] = 28936, + [SMALL_STATE(795)] = 28945, + [SMALL_STATE(796)] = 28954, + [SMALL_STATE(797)] = 28963, + [SMALL_STATE(798)] = 28972, + [SMALL_STATE(799)] = 28981, + [SMALL_STATE(800)] = 28990, + [SMALL_STATE(801)] = 28999, + [SMALL_STATE(802)] = 29008, + [SMALL_STATE(803)] = 29017, + [SMALL_STATE(804)] = 29026, + [SMALL_STATE(805)] = 29035, + [SMALL_STATE(806)] = 29044, + [SMALL_STATE(807)] = 29053, + [SMALL_STATE(808)] = 29062, + [SMALL_STATE(809)] = 29071, + [SMALL_STATE(810)] = 29080, + [SMALL_STATE(811)] = 29089, + [SMALL_STATE(812)] = 29098, + [SMALL_STATE(813)] = 29107, + [SMALL_STATE(814)] = 29116, + [SMALL_STATE(815)] = 29125, + [SMALL_STATE(816)] = 29134, + [SMALL_STATE(817)] = 29143, + [SMALL_STATE(818)] = 29152, + [SMALL_STATE(819)] = 29161, + [SMALL_STATE(820)] = 29170, + [SMALL_STATE(821)] = 29179, + [SMALL_STATE(822)] = 29188, + [SMALL_STATE(823)] = 29197, + [SMALL_STATE(824)] = 29206, + [SMALL_STATE(825)] = 29215, + [SMALL_STATE(826)] = 29224, + [SMALL_STATE(827)] = 29233, + [SMALL_STATE(828)] = 29242, + [SMALL_STATE(829)] = 29251, + [SMALL_STATE(830)] = 29260, + [SMALL_STATE(831)] = 29269, + [SMALL_STATE(832)] = 29278, + [SMALL_STATE(833)] = 29287, + [SMALL_STATE(834)] = 29296, + [SMALL_STATE(835)] = 29305, + [SMALL_STATE(836)] = 29314, + [SMALL_STATE(837)] = 29323, + [SMALL_STATE(838)] = 29332, + [SMALL_STATE(839)] = 29341, + [SMALL_STATE(840)] = 29350, + [SMALL_STATE(841)] = 29359, + [SMALL_STATE(842)] = 29368, + [SMALL_STATE(843)] = 29377, + [SMALL_STATE(844)] = 29386, + [SMALL_STATE(845)] = 29395, + [SMALL_STATE(846)] = 29404, + [SMALL_STATE(847)] = 29413, + [SMALL_STATE(848)] = 29422, + [SMALL_STATE(849)] = 29431, + [SMALL_STATE(850)] = 29440, + [SMALL_STATE(851)] = 29449, + [SMALL_STATE(852)] = 29458, + [SMALL_STATE(853)] = 29467, + [SMALL_STATE(854)] = 29476, + [SMALL_STATE(855)] = 29485, + [SMALL_STATE(856)] = 29494, + [SMALL_STATE(857)] = 29503, + [SMALL_STATE(858)] = 29512, + [SMALL_STATE(859)] = 29521, + [SMALL_STATE(860)] = 29530, + [SMALL_STATE(861)] = 29539, + [SMALL_STATE(862)] = 29548, + [SMALL_STATE(863)] = 29557, + [SMALL_STATE(864)] = 29566, + [SMALL_STATE(865)] = 29575, + [SMALL_STATE(866)] = 29584, + [SMALL_STATE(867)] = 29593, + [SMALL_STATE(868)] = 29602, + [SMALL_STATE(869)] = 29611, + [SMALL_STATE(870)] = 29620, + [SMALL_STATE(871)] = 29629, + [SMALL_STATE(872)] = 29638, + [SMALL_STATE(873)] = 29647, + [SMALL_STATE(874)] = 29656, + [SMALL_STATE(875)] = 29665, + [SMALL_STATE(876)] = 29674, + [SMALL_STATE(877)] = 29683, + [SMALL_STATE(878)] = 29692, + [SMALL_STATE(879)] = 29701, + [SMALL_STATE(880)] = 29710, + [SMALL_STATE(881)] = 29719, + [SMALL_STATE(882)] = 29728, + [SMALL_STATE(883)] = 29737, + [SMALL_STATE(884)] = 29746, + [SMALL_STATE(885)] = 29755, + [SMALL_STATE(886)] = 29764, + [SMALL_STATE(887)] = 29773, + [SMALL_STATE(888)] = 29782, + [SMALL_STATE(889)] = 29791, + [SMALL_STATE(890)] = 29800, + [SMALL_STATE(891)] = 29809, + [SMALL_STATE(892)] = 29818, + [SMALL_STATE(893)] = 29827, + [SMALL_STATE(894)] = 29836, + [SMALL_STATE(895)] = 29845, +}; + +static const TSParseActionEntry ts_parse_actions[] = { + [0] = {.entry = {.count = 0, .reusable = false}}, + [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), + [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), + [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 0, 0, 0), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(641), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(747), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(742), + [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(652), + [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(763), + [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(609), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(678), + [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(892), + [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610), + [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(803), + [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(88), + [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), + [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(288), + [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(798), + [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(86), + [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(797), + [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(796), + [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(281), + [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50), + [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), + [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), + [75] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(763), + [78] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(216), + [81] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(330), + [84] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(609), + [87] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(678), + [90] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(13), + [93] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), + [95] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(892), + [98] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(610), + [101] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(803), + [104] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(88), + [107] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(87), + [110] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(288), + [113] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(798), + [116] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(86), + [119] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(797), + [122] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(796), + [125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), + [127] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(50), + [130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(63), + [133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(837), + [135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(717), + [137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), + [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866), + [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(155), + [149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), + [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(166), + [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(173), + [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(164), + [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 3, 0, 0), + [163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(633), + [169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 2, 0, 0), + [171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(250), + [173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(247), + [175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(265), + [177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), + [179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(242), + [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), + [183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(243), + [185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), + [193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), + [195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494), + [197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), + [199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), + [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_comma_list, 3, 0, 0), + [203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), + [205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570), + [207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_comma_list, 2, 0, 0), + [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575), + [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), + [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 2, 0, 0), + [221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568), + [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 3, 0, 0), + [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0), + [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 1, 0, 0), + [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), + [233] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(101), + [236] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(330), + [239] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(641), + [242] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(695), + [245] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(747), + [248] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(892), + [251] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(650), + [254] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(63), + [257] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(742), + [260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 2, 0, 0), + [262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [264] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), + [266] = {.entry = {.count = 1, .reusable = false}}, SHIFT(345), + [268] = {.entry = {.count = 1, .reusable = false}}, SHIFT(346), + [270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [272] = {.entry = {.count = 1, .reusable = false}}, SHIFT(347), + [274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(348), + [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [282] = {.entry = {.count = 1, .reusable = false}}, SHIFT(469), + [284] = {.entry = {.count = 1, .reusable = false}}, SHIFT(477), + [286] = {.entry = {.count = 1, .reusable = false}}, SHIFT(461), + [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), + [290] = {.entry = {.count = 1, .reusable = false}}, SHIFT(485), + [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(484), + [294] = {.entry = {.count = 1, .reusable = false}}, SHIFT(484), + [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(326), + [302] = {.entry = {.count = 1, .reusable = false}}, SHIFT(354), + [304] = {.entry = {.count = 1, .reusable = false}}, SHIFT(339), + [306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), + [308] = {.entry = {.count = 1, .reusable = false}}, SHIFT(324), + [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), + [312] = {.entry = {.count = 1, .reusable = false}}, SHIFT(353), + [314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [318] = {.entry = {.count = 1, .reusable = false}}, SHIFT(541), + [320] = {.entry = {.count = 1, .reusable = false}}, SHIFT(542), + [322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(548), + [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), + [326] = {.entry = {.count = 1, .reusable = false}}, SHIFT(549), + [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), + [330] = {.entry = {.count = 1, .reusable = false}}, SHIFT(511), + [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [336] = {.entry = {.count = 1, .reusable = false}}, SHIFT(400), + [338] = {.entry = {.count = 1, .reusable = false}}, SHIFT(386), + [340] = {.entry = {.count = 1, .reusable = false}}, SHIFT(399), + [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), + [344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(398), + [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), + [348] = {.entry = {.count = 1, .reusable = false}}, SHIFT(395), + [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [354] = {.entry = {.count = 1, .reusable = false}}, SHIFT(489), + [356] = {.entry = {.count = 1, .reusable = false}}, SHIFT(480), + [358] = {.entry = {.count = 1, .reusable = false}}, SHIFT(470), + [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), + [362] = {.entry = {.count = 1, .reusable = false}}, SHIFT(468), + [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), + [366] = {.entry = {.count = 1, .reusable = false}}, SHIFT(482), + [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [372] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370), + [374] = {.entry = {.count = 1, .reusable = false}}, SHIFT(378), + [376] = {.entry = {.count = 1, .reusable = false}}, SHIFT(384), + [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [380] = {.entry = {.count = 1, .reusable = false}}, SHIFT(382), + [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), + [384] = {.entry = {.count = 1, .reusable = false}}, SHIFT(380), + [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [390] = {.entry = {.count = 1, .reusable = false}}, SHIFT(258), + [392] = {.entry = {.count = 1, .reusable = false}}, SHIFT(282), + [394] = {.entry = {.count = 1, .reusable = false}}, SHIFT(280), + [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), + [398] = {.entry = {.count = 1, .reusable = false}}, SHIFT(279), + [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), + [402] = {.entry = {.count = 1, .reusable = false}}, SHIFT(278), + [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 4, 0, 0), + [410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 4, 0, 0), + [412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 3, 0, 0), + [414] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 3, 0, 0), + [416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 2, 0, 0), + [418] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 2, 0, 0), + [420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_elaborated_ident, 2, 0, 0), + [422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_elaborated_ident, 2, 0, 0), + [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [426] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_struct_member_repeat1, 2, 0, 0), + [428] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_member_repeat1, 2, 0, 0), SHIFT_REPEAT(330), + [431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_member_repeat1, 2, 0, 0), + [433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), + [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), + [439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_list, 3, 0, 0), + [441] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_list, 3, 0, 0), + [443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singular_expression, 1, 0, 0), + [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), + [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_singular_expression, 1, 0, 0), + [451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_elaborated_ident, 3, 0, 0), + [453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_elaborated_ident, 3, 0, 0), + [455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 3, 0, 0), + [457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 3, 0, 0), + [459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 2, 0, 0), + [461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 2, 0, 0), + [463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_expression_list, 2, 0, 0), + [465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_expression_list, 2, 0, 0), + [467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 1, 0, 0), + [469] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 1, 0, 0), + [471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bool_literal, 1, 0, 0), + [473] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bool_literal, 1, 0, 0), + [475] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_ident, 1, 0, 0), + [477] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_ident, 1, 0, 0), + [479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_swizzle_name, 1, 0, 0), + [481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_swizzle_name, 1, 0, 0), + [483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_phrase, 2, 0, 0), + [485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_phrase, 2, 0, 0), + [487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_expression_list, 3, 0, 0), + [489] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_expression_list, 3, 0, 0), + [491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_float_literal, 1, 0, 0), + [493] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_float_literal, 1, 0, 0), + [495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1, 0, 0), + [497] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_literal, 1, 0, 0), + [499] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hex_float_literal, 1, 0, 0), + [501] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hex_float_literal, 1, 0, 0), + [503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paren_expression, 3, 0, 0), + [505] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_paren_expression, 3, 0, 0), + [507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_int_literal, 1, 0, 0), + [509] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_int_literal, 1, 0, 0), + [511] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 1, 0, 0), + [513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 1, 0, 0), + [515] = {.entry = {.count = 1, .reusable = false}}, SHIFT(232), + [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), + [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(822), + [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [529] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 3, 0, 0), + [531] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 3, 0, 0), + [533] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 2, 0, 0), + [535] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 2, 0, 0), + [537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal_float_literal, 1, 0, 0), + [539] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decimal_float_literal, 1, 0, 0), + [541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal_int_literal, 1, 0, 0), + [543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decimal_int_literal, 1, 0, 0), + [545] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0), + [547] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0), + [549] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(768), + [552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871), + [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), + [556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), + [558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_expression, 1, 0, 0), + [562] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_and_expression, 1, 0, 0), + [564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_expression, 1, 0, 0), + [566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_or_expression, 1, 0, 0), + [568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_xor_expression, 1, 0, 0), + [570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 1, 0, 0), + [574] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 1, 0, 0), + [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singular_expression, 2, 0, 0), + [578] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_singular_expression, 2, 0, 0), + [580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 0), + [582] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 0), + [584] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 4, 0, 0), + [586] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 4, 0, 0), + [588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), + [592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(588), + [594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_if_clause, 4, 0, 0), + [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_if_clause, 4, 0, 0), + [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), + [604] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_clause, 3, 0, 0), + [606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 3, 0, 0), + [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 2, 0, 0), + [610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 3, 0, 0), + [612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), + [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(763), + [618] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_statement, 4, 0, 0), + [620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_statement, 4, 0, 0), + [622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 0), + [624] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 0), + [626] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 4, 0, 0), + [628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 4, 0, 0), + [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [632] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 0), + [634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 0), + [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_statement, 3, 0, 0), + [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_statement, 3, 0, 0), + [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), + [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519), + [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), + [648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 3, 0, 0), + [650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 3, 0, 0), + [652] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 3, 0, 0), + [654] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 3, 0, 0), + [656] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_body, 3, 0, 0), + [658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_body, 3, 0, 0), + [660] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1, 0, 0), + [662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1, 0, 0), + [664] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 5, 0, 0), + [666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 5, 0, 0), + [668] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 2, 0, 0), + [670] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 2, 0, 0), + [672] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 5, 0, 0), + [674] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 5, 0, 0), + [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [678] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_body, 4, 0, 0), + [680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_body, 4, 0, 0), + [682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 6, 0, 0), + [684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 6, 0, 0), + [686] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 0), + [688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 0), + [690] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 7, 0, 0), + [692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 7, 0, 0), + [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [696] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 2, 0, 0), + [698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2, 0, 0), + [700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619), + [702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_expression, 3, 0, 0), + [706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [708] = {.entry = {.count = 1, .reusable = false}}, SHIFT(296), + [710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(620), + [712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [716] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_expression, 1, 0, 0), + [718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [726] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_operator, 1, 0, 0), + [728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_operator, 1, 0, 0), + [730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [732] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_additive_operator, 1, 0, 0), + [734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_operator, 1, 0, 0), + [736] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_assignment_operator, 1, 0, 0), + [738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_assignment_operator, 1, 0, 0), + [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_expression, 3, 0, 0), + [744] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_expression, 3, 0, 0), + [746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), + [750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), + [754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), + [762] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), SHIFT_REPEAT(718), + [765] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), + [767] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), SHIFT_REPEAT(652), + [770] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), SHIFT_REPEAT(653), + [773] = {.entry = {.count = 1, .reusable = false}}, SHIFT(479), + [775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(738), + [777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(881), + [779] = {.entry = {.count = 1, .reusable = false}}, SHIFT(880), + [781] = {.entry = {.count = 1, .reusable = false}}, SHIFT(879), + [783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(878), + [785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(573), + [787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(877), + [789] = {.entry = {.count = 1, .reusable = false}}, SHIFT(876), + [791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(875), + [793] = {.entry = {.count = 1, .reusable = false}}, SHIFT(578), + [795] = {.entry = {.count = 1, .reusable = false}}, SHIFT(874), + [797] = {.entry = {.count = 1, .reusable = false}}, SHIFT(567), + [799] = {.entry = {.count = 1, .reusable = false}}, SHIFT(873), + [801] = {.entry = {.count = 1, .reusable = false}}, SHIFT(872), + [803] = {.entry = {.count = 1, .reusable = false}}, SHIFT(566), + [805] = {.entry = {.count = 1, .reusable = false}}, SHIFT(507), + [807] = {.entry = {.count = 1, .reusable = false}}, SHIFT(515), + [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), + [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [815] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shift_expression, 1, 0, 0), + [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [819] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_core_lhs_expression, 2, 0, 0), + [821] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 4, 0, 0), + [823] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 3, 0, 0), + [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), + [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [829] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 2, 0, 0), + [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(560), + [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lhs_expression, 1, 0, 0), + [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [843] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relational_expression, 1, 0, 0), + [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), + [851] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_core_lhs_expression, 3, 0, 0), + [853] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shift_expression, 3, 0, 0), + [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(734), + [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(733), + [865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(522), + [869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), + [873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [877] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lhs_expression, 2, 0, 0), + [879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_directive, 1, 0, 0), + [881] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_global_directive, 1, 0, 0), + [883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [885] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_requires_directive, 3, 0, 0), + [887] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_requires_directive, 3, 0, 0), + [889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_directive, 3, 0, 0), + [891] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_directive, 3, 0, 0), + [893] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 2, 0, 0), + [895] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 2, 0, 0), + [897] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_directive, 3, 0, 0), + [899] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enable_directive, 3, 0, 0), + [901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553), + [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [905] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_control, 6, 0, 0), + [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_control, 6, 0, 0), + [909] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_control, 5, 0, 0), + [911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_control, 5, 0, 0), + [913] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fragment_attr, 2, 0, 0), + [915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fragment_attr, 2, 0, 0), + [917] = {.entry = {.count = 1, .reusable = false}}, SHIFT(357), + [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [921] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158), + [923] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, 0, 0), + [925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 0), + [927] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_attr, 3, 0, 0), + [929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_attr, 3, 0, 0), + [931] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 7, 0, 0), + [933] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 7, 0, 0), + [935] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 7, 0, 0), + [937] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 7, 0, 0), + [939] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compute_attr, 2, 0, 0), + [941] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compute_attr, 2, 0, 0), + [943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), + [945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365), + [947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), + [949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337), + [951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), + [953] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487), + [955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), + [957] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271), + [959] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 5, 0, 0), + [961] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 5, 0, 0), + [963] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_size_attr, 5, 0, 0), + [965] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_size_attr, 5, 0, 0), + [967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), + [969] = {.entry = {.count = 1, .reusable = false}}, SHIFT(472), + [971] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_location_attr, 5, 0, 0), + [973] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location_attr, 5, 0, 0), + [975] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 5, 0, 0), + [977] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 5, 0, 0), + [979] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_id_attr, 5, 0, 0), + [981] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_id_attr, 5, 0, 0), + [983] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_align_attr, 6, 0, 0), + [985] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_align_attr, 6, 0, 0), + [987] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_group_attr, 5, 0, 0), + [989] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_group_attr, 5, 0, 0), + [991] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binding_attr, 6, 0, 0), + [993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding_attr, 6, 0, 0), + [995] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_attr, 5, 0, 0), + [997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_attr, 5, 0, 0), + [999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_blend_src_attr, 6, 0, 0), + [1001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_blend_src_attr, 6, 0, 0), + [1003] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_attr, 6, 0, 0), + [1005] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_attr, 6, 0, 0), + [1007] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_group_attr, 6, 0, 0), + [1009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_group_attr, 6, 0, 0), + [1011] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_blend_src_attr, 5, 0, 0), + [1013] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_blend_src_attr, 5, 0, 0), + [1015] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binding_attr, 5, 0, 0), + [1017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding_attr, 5, 0, 0), + [1019] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_align_attr, 5, 0, 0), + [1021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_align_attr, 5, 0, 0), + [1023] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_id_attr, 6, 0, 0), + [1025] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_id_attr, 6, 0, 0), + [1027] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 6, 0, 0), + [1029] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 6, 0, 0), + [1031] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 10, 0, 0), + [1033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 10, 0, 0), + [1035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_location_attr, 6, 0, 0), + [1037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location_attr, 6, 0, 0), + [1039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [1041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), + [1043] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), + [1045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), + [1047] = {.entry = {.count = 1, .reusable = false}}, SHIFT(414), + [1049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(572), + [1051] = {.entry = {.count = 1, .reusable = false}}, SHIFT(569), + [1053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 1, 0, 0), + [1055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1, 0, 0), + [1057] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 9, 0, 0), + [1059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 9, 0, 0), + [1061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), + [1063] = {.entry = {.count = 1, .reusable = false}}, SHIFT(427), + [1065] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_size_attr, 6, 0, 0), + [1067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_size_attr, 6, 0, 0), + [1069] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vertex_attr, 2, 0, 0), + [1071] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vertex_attr, 2, 0, 0), + [1073] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_must_use_attr, 2, 0, 0), + [1075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_must_use_attr, 2, 0, 0), + [1077] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 6, 0, 0), + [1079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 6, 0, 0), + [1081] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_attr, 2, 0, 0), + [1083] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_attr, 2, 0, 0), + [1085] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 8, 0, 0), + [1087] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 8, 0, 0), + [1089] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 8, 0, 0), + [1091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 8, 0, 0), + [1093] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_invariant_attr, 2, 0, 0), + [1095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_invariant_attr, 2, 0, 0), + [1097] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_decl, 3, 0, 0), + [1099] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_decl, 3, 0, 0), + [1101] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_decl, 3, 0, 0), + [1103] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_decl, 3, 0, 0), + [1105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), + [1107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 4, 0, 0), + [1109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 4, 0, 0), + [1111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_decl, 2, 0, 0), + [1113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_decl, 2, 0, 0), + [1115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [1117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [1119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 5, 0, 0), + [1121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 5, 0, 0), + [1123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 3, 0, 0), + [1125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 3, 0, 0), + [1127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [1129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relational_expression, 3, 0, 0), + [1131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), + [1133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_and_expression, 1, 0, 0), + [1135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_or_expression, 1, 0, 0), + [1137] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3, 0, 0), + [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_and_expression, 3, 0, 0), + [1141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_or_expression, 3, 0, 0), + [1143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bitwise_expression, 3, 0, 0), + [1145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_or_expression, 3, 0, 0), + [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_and_expression, 3, 0, 0), + [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_xor_expression, 3, 0, 0), + [1151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), + [1153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616), + [1155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [1157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [1159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [1161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [1163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_switch_body_repeat1, 2, 0, 0), + [1165] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_switch_body_repeat1, 2, 0, 0), SHIFT_REPEAT(19), + [1168] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_switch_body_repeat1, 2, 0, 0), SHIFT_REPEAT(205), + [1171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [1173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [1175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 1, 0, 0), + [1177] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_selectors_repeat1, 2, 0, 0), SHIFT_REPEAT(21), + [1180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_case_selectors_repeat1, 2, 0, 0), + [1182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ident, 2, 0, 0), + [1184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specifier, 1, 0, 0), + [1186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selector, 1, 0, 0), + [1188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enable_extension_list_repeat1, 2, 0, 0), + [1190] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enable_extension_list_repeat1, 2, 0, 0), SHIFT_REPEAT(711), + [1193] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_body_decl_repeat1, 2, 0, 0), SHIFT_REPEAT(202), + [1196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_body_decl_repeat1, 2, 0, 0), + [1198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 4, 0, 0), + [1200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [1202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [1204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 1, 0, 0), + [1206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), + [1208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_list, 3, 0, 0), + [1210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), + [1212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_list, 3, 0, 0), + [1214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_software_extension_list_repeat1, 2, 0, 0), + [1216] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_software_extension_list_repeat1, 2, 0, 0), SHIFT_REPEAT(710), + [1219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [1221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590), + [1223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 4, 0, 0), + [1225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 1, 0, 0), + [1229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optionally_typed_ident, 1, 0, 0), + [1231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), + [1233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [1235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_comma_list, 1, 0, 0), + [1237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_name_token, 1, 0, 0), + [1239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), + [1241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_rule_name, 1, 0, 0), + [1243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_alone_clause, 3, 0, 0), + [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 3, 0, 0), + [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_list, 2, 0, 0), + [1249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), + [1251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(539), + [1253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_list, 1, 0, 0), + [1255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), + [1257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [1259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_list, 1, 0, 0), + [1261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), + [1263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [1265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 5, 0, 0), + [1269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [1271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_alone_clause, 2, 0, 0), + [1273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [1275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), + [1277] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_comma_list_repeat1, 2, 0, 0), SHIFT_REPEAT(74), + [1280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_comma_list_repeat1, 2, 0, 0), + [1282] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_arg_comma_list_repeat1, 2, 0, 0), SHIFT_REPEAT(45), + [1285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_arg_comma_list_repeat1, 2, 0, 0), + [1287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), + [1289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_list, 2, 0, 0), + [1291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_clause, 1, 0, 0), + [1293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), + [1295] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2, 0, 0), SHIFT_REPEAT(206), + [1298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2, 0, 0), + [1300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 2, 0, 0), + [1302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [1304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 3, 0, 0), + [1306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 6, 0, 0), + [1308] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_decl, 4, 0, 0), + [1310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_member, 3, 0, 0), + [1312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [1314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514), + [1316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(825), + [1318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), + [1320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_sampling_name, 1, 0, 0), + [1322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_decl, 3, 0, 0), + [1324] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_or_value_statement, 1, 0, 0), + [1326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [1328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_rule_name, 3, 0, 0), + [1330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_call_statement, 1, 0, 0), + [1332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_updating_statement, 1, 0, 0), + [1334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 3, 0, 0), + [1336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [1338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_statement, 3, 0, 0), + [1340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), + [1342] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_member, 4, 0, 0), + [1344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 7, 0, 0), + [1346] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 4, 0, 0), + [1348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), + [1350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(769), + [1352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537), + [1354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1, 0, 0), + [1356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [1358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(739), + [1360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(770), + [1362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(535), + [1364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(771), + [1366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(534), + [1368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_name, 1, 0, 0), + [1370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_value_name, 1, 0, 0), + [1372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(772), + [1374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530), + [1376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(773), + [1378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(528), + [1380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774), + [1382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526), + [1384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_type_name, 1, 0, 0), + [1386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(884), + [1388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), + [1390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807), + [1392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), + [1394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 8, 0, 0), + [1396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_name, 1, 0, 0), + [1398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), + [1400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), + [1402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_expression, 1, 0, 0), + [1404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decrement_statement, 2, 0, 0), + [1406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_increment_statement, 2, 0, 0), + [1408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 2, 0, 0), + [1410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [1412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [1414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(775), + [1416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), + [1418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(832), + [1420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 1, 0, 0), + [1422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [1424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [1426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), + [1428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(776), + [1430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(521), + [1432] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optionally_typed_ident, 3, 0, 0), + [1434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [1436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), + [1438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0), + [1440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [1442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), + [1444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676), + [1446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672), + [1448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), + [1450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), + [1452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), + [1454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_decl, 4, 0, 0), + [1456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), + [1458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 4, 0, 0), + [1460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), + [1462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), + [1464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [1466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [1468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [1470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), + [1472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), + [1474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529), + [1476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), + [1478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), + [1480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(533), + [1482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(538), + [1484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546), + [1486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563), + [1488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [1490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [1492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), + [1494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [1496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), + [1498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [1500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), + [1502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), + [1504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), + [1506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_init, 1, 0, 0), + [1508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), + [1510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [1512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), + [1514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [1516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [1518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_or_value_statement, 3, 0, 0), + [1520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), + [1522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), + [1524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [1526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [1528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), + [1530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [1532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [1534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [1536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [1538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 5, 0, 0), + [1540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 3, 0, 0), + [1542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), + [1544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_or_value_statement, 4, 0, 0), + [1546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [1548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), + [1550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), + [1552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [1554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_statement, 2, 0, 0), + [1556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), + [1558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [1560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 4, 0, 0), + [1562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), + [1564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [1566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [1568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [1570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), + [1572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), + [1574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), + [1576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), + [1578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), + [1580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), + [1582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [1584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(675), + [1586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), + [1588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_severity_control_name, 1, 0, 0), + [1590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), + [1592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), + [1594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), + [1596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [1598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 2, 0, 0), + [1600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), + [1602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [1604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), + [1606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), + [1608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), + [1610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574), + [1612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473), + [1614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), + [1616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498), + [1618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), + [1620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), + [1622] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_update, 1, 0, 0), + [1624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [1626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [1628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [1630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490), + [1632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [1634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [1636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_assert_statement, 2, 0, 0), + [1638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [1640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), + [1642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), + [1644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [1646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [1648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [1650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 3, 0, 0), + [1652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), + [1654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625), + [1656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [1658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [1660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [1662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), + [1664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [1666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [1668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), + [1670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [1672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [1674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [1676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [1678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), + [1680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545), + [1682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), + [1684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(583), + [1686] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [1688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 4, 0, 0), + [1690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), + [1692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 5, 0, 0), + [1694] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_if_statement, 4, 0, 0), + [1696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), + [1698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 5, 0, 0), +}; + +enum ts_external_scanner_symbol_identifiers { + ts_external_token__block_comment = 0, + ts_external_token__disambiguate_template = 1, + ts_external_token__template_args_start = 2, + ts_external_token__template_args_end = 3, + ts_external_token__less_than = 4, + ts_external_token__less_than_equal = 5, + ts_external_token__shift_left = 6, + ts_external_token__shift_left_assign = 7, + ts_external_token__greater_than = 8, + ts_external_token__greater_than_equal = 9, + ts_external_token__shift_right = 10, + ts_external_token__shift_right_assign = 11, + ts_external_token__error_sentinel = 12, +}; + +static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { + [ts_external_token__block_comment] = sym__block_comment, + [ts_external_token__disambiguate_template] = sym__disambiguate_template, + [ts_external_token__template_args_start] = sym__template_args_start, + [ts_external_token__template_args_end] = sym__template_args_end, + [ts_external_token__less_than] = sym__less_than, + [ts_external_token__less_than_equal] = sym__less_than_equal, + [ts_external_token__shift_left] = sym__shift_left, + [ts_external_token__shift_left_assign] = sym__shift_left_assign, + [ts_external_token__greater_than] = sym__greater_than, + [ts_external_token__greater_than_equal] = sym__greater_than_equal, + [ts_external_token__shift_right] = sym__shift_right, + [ts_external_token__shift_right_assign] = sym__shift_right_assign, + [ts_external_token__error_sentinel] = sym__error_sentinel, +}; + +static const bool ts_external_scanner_states[21][EXTERNAL_TOKEN_COUNT] = { + [1] = { + [ts_external_token__block_comment] = true, + [ts_external_token__disambiguate_template] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__shift_left_assign] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + [ts_external_token__shift_right] = true, + [ts_external_token__shift_right_assign] = true, + [ts_external_token__error_sentinel] = true, + }, + [2] = { + [ts_external_token__block_comment] = true, + }, + [3] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_end] = true, + }, + [4] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + [ts_external_token__shift_right] = true, + }, + [5] = { + [ts_external_token__block_comment] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + [ts_external_token__shift_right] = true, + }, + [6] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + [ts_external_token__shift_right] = true, + }, + [7] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + }, + [8] = { + [ts_external_token__block_comment] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + }, + [9] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + [ts_external_token__shift_right] = true, + }, + [10] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + }, + [11] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__shift_right] = true, + }, + [12] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + }, + [13] = { + [ts_external_token__block_comment] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__shift_right] = true, + }, + [14] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + }, + [15] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__shift_left_assign] = true, + [ts_external_token__shift_right_assign] = true, + }, + [16] = { + [ts_external_token__block_comment] = true, + [ts_external_token__shift_left_assign] = true, + [ts_external_token__shift_right_assign] = true, + }, + [17] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__shift_right] = true, + }, + [18] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__template_args_end] = true, + }, + [19] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__shift_right] = true, + }, + [20] = { + [ts_external_token__block_comment] = true, + [ts_external_token__disambiguate_template] = true, + }, +}; + +#ifdef __cplusplus +extern "C" { +#endif +void *tree_sitter_wgsl_external_scanner_create(void); +void tree_sitter_wgsl_external_scanner_destroy(void *); +bool tree_sitter_wgsl_external_scanner_scan(void *, TSLexer *, const bool *); +unsigned tree_sitter_wgsl_external_scanner_serialize(void *, char *); +void tree_sitter_wgsl_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_wgsl(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, + .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_ident_pattern_token, + .external_scanner = { + &ts_external_scanner_states[0][0], + ts_external_scanner_symbol_map, + tree_sitter_wgsl_external_scanner_create, + tree_sitter_wgsl_external_scanner_destroy, + tree_sitter_wgsl_external_scanner_scan, + tree_sitter_wgsl_external_scanner_serialize, + tree_sitter_wgsl_external_scanner_deserialize, + }, + .primary_state_ids = ts_primary_state_ids, + }; + return &language; +} +#ifdef __cplusplus +} +#endif diff --git a/src/parser.o b/src/parser.o deleted file mode 100644 index 3d00748d778a06c56bcdbd002de0a7bc21a27e4a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 300856 zcmce93EWjv_y4_D(!`M|bD0{Ds6?fKl%fgeuMzML|4-6dn!t(lohMU~x~rBXOJaZ?`D z-$D+quET>lwdLTojd*Y#v_b5y4S2A9Mh;fupQv(U^bTYm`luKM0$NiQEhj)_MI-#} zJZ@wB?O(CcGqiH$hR@KJ37@6iQAgq5vFpY}x6gNnfJW01g#m%=A~U@AR|{^2(*G?$AGwkVhuq|B0+Cn24bWR_i{?< zaIYjuYo?N52X}%9bWk?jkOwY4LahE3DxzF7j1T%o)WkvMu9_%=Hsry09o*hHsOSNa zDafyiy+HitjktuI@=-?F_n^luRb?%xEcX&QuPEmjaK_b!qJAJoh1y?B>FZT`GNqX} z4Pm0>&G+C)-Yh0WZ+uHmxgyJ(pD3n|JQO;_k!O)$)8W)w-ZbFIDEk*#XlLAxmT zZ$0>%N|-;ZNHBj^kYL2#r`*Ix*zz$I{)(L3?d05{oYmlnRclDls&ya&R*gDiD?HIhx_;94DX9&IG8){tOY{R~0||0_A=A&IijAm7|`y3G9v zp(uABIWv^ACDhB(vj{ACXr+YO!iH4;idskN7*+q$J}E4fr8i2F3Q>593k$VqE76M199R3B<5_ab#}Q>~vYT3}c`k&a+%H_mepB^tu{}rikyrFd zlA^h6Hcy*O29;<_2= zD9X{B=yhg2`f-^qM$_u@;3!R}W^%B-x_dd>RN6ZF1TCezA0TJ(m8}0PE`$`Qv(CA3CxxN)F44sYp6>1 zH}$}?0BlN<0oaTL1JINW%KHg;JIa2G_0fHYKWMi%+7DTh0MtZka$S&CAP4vV*B4 z=$5NM1S}1>CBTZZ^KsI2FX0bVT?bWB?r_bo`jUCJ5Z+J3FNC+TN4o765_H>*AjFuP z$qBh_4Ht^Fnyj}%D9U|Jj#JKbw&$qs@`~_m zAPDKGEji^KMcLv#Vh0Gt_lW)3zBV)t01?>2`5dDdb8IRI$+3wfm}BEXSdLvuDfPrv zBpHoqBkXKd?P>XgN6?{^#VB zYaFGQxIcx_D0?Ke_f_rnVEnjY&~*R^N!9u!*v-a-B;UvhbfbIsb`;aSdk2yX{NW%1 zfe!>B%D%$w<3im&9)osK?hke4V?6Ln;zS&XUoRvbfir#9I?c&|Bj{h_@~!C*&<&UAsM0^F#K2K?GwjU+I^tz7_)9Vp($}O^$@G*+%{GUsbHq7%) zUkNu2y0Hh%vMIX|?FyGElOnp&Jl6>a;<-Fk({msB&X$Kei(jUss4RAwatJtLb$1dR z@R{tRe85q*_%h{6O4D<_aW73g*O3H0m-mWxC#PJId9D*s^W4!S>A8L+Xv2VT(}3sx zdo1^GCs`v;Lf=uY_Lg$6pdr0K341MA)o^Pbq;6YM(fsQz2ezwRNCkdZIg%sc zihC9bM(h+2GRUFil=~;jPQ{%`SBXE69s!{!cM&;bm2(N(b5}W??K#17AZ%B;fV_~- zw$#vGH7ueAp4!$@n%k$vB&h055O!+&lTw=6-7!1~P!AFeP%jXHege^mvM+3ouIJ+q z+8skjK#HuMIXw_5@0juJv`v|3( zy7MT_N&hqnrtYJJsOU*@%H3$G`vS$(GxJH(;1_+<1>vRv&jeUeb{d+yYw!m;m*Sr& zH%e1%`c^pb%jtA@v#=;Mz=5P#eG*KuWoRhl*p!^|aYWfhTs(JH&0A7gZWD4gRZf3! zWK_^Afi9<1P0y|Jo&6E+EXppyIn2GUC$jofmV1$$ zmzA>*IAV1t614gV_EBzil)aqIuGD5{QkwgmrIcn)R*+y$o<)d?MvzmkXq4`A9;cX| z*_V;zKIdZ)|M<)vbnDMp+ug7D1ML@ZHO%$V)v$7Vy7ggApZm7uL0|R$@NIbTh>mkM z+K9tvlAyyYK*;cBkW)UqDEmG4gFonga2AB3+{fg6s+?chp8L<<=ts{#UgM7Blxwv8 z=UHJi%8sM<@v40!ge0T$lxAFJlVDsb2r(`XkQ3-eugzbhn64FD!7Y*-4N0(RUl4(& zLDzrHji}R&=>2rCzmNIsc66|95H7`mIQU=^bZ`w2(pf8V%I%DA5PCu=zRKRg_MC?g zc}2666kWrNw)>c0QkrW)KV*h@t|tlEAb3T)kW+4vtp&Y-n&-xnqzx4$=()+^rUB0d zSW)(7E_SzSwmt_{g;n+tIp5o+bqx{k*;VY3C-QGd(6i5j5M$<%Q$CLPD*GLT;;Zb> zY|l~s;uZatq^Nk6{gcx4Yy;RTp3Uz7LOkmg%_FDWBJ=E)XlS0@fh28cNP?d2O0DHh zgKjKdWqYArVU-=ogUazb>HAY7J$D=ldagGJ>Fii?$~%j%vi%?wUuBPHd#-Q;Km=B} z_z8b3rRlJ_AjDx$l8{MEh@*ajoN`0VVb4=cC-Dm;>97}l(^tYx0}lJgtSCDMJ5YDA zZbRQdhf(fmJ=lA1dU~}kSA%xq!LgdxwdJ6NuEHZ45wTTxIW1;D-Y3C;ECwNdSVB&@ zAENA6xFPAj!5>I}1feMR9yv>u^BvoB75DeF2p=W;~r(C10!t26llpRg&7pV4g zV7y%0rZFVhuU3L1`_&2%c5QnrrSuG#ft=*WMj!(D5eP(-t-&5^YLAQ0~&#ncZyNOGPW4kFNXzz+ddly$t@xl-?TPKK%|ce3W#^yWCI zte+M?HI{=ZI_e+ygpJIxZ%Hu6@_U&1E66D~Kgw>*RXI}4-$N+M@z$sNOV$4jj?BC~ z3Ho6-bQn~`$K!6HHfsVQx!5_I(!AJdL4p@M%|Y13&Z(5r89tmOgIhs@{agWNYK66jRS_1RY{SBNFsnGiog#Ou%#N$BME8 zvEOtj>ZWsFXpeGj_2BaR>0jG{=6mtLcAz!(;lU%Cm$%X)dcHFWdVW6;V(bCrlp7mm z`5ei8piAua5Q=gO$XTSE>1@xnZ!O!?b9a!#;r~faxkg+2@?kW}o=WY*RC@~;F9BK& zLIO0M1iRUr5WC5d6X-^Fpz|oE0m_qPlH^-i(|K@IplKi)QTA=_K;P9J=#}@-4fZ6x z(|vTXP5cN4;@~_)^yC6U?EH(Iay#QY(0WuByUuS2j#%A{1P8na`v@s2PVKWP&D7os znW3IzGkR{ES9Dugk)`%(imB%sLWkI}6A9WdnOe(j2zV~Qin0^9)@60AdmXBx+(13} zaR!}fJJ5_Am}lQ(k4)WnNyup%gc$Pj zSCmGFK}GY~jPD*ndP4|_XFE}vS4DM6(6coO(LHs@DYwWxyEDbqv*(ed4VU<)kB6HE z-Pnv~?V)D1BZZ|QGoS$rDb4Xwng79=>JZq!pg zp!invVoEdTmQ$LZd5Z)+Gl38lJw{HsBJ<2*im7K-kfgz1`lhSHO#`0!UuC(8yGtJY z4RfO0X?oCYi!}1~K)r2x#fCh%qK=47!`og_WouogkAHv%Q#2!AoW%p%qK=h=M|7F) zf&DRd+>Q3}djJc;kx{)) zf(}{BKFS?}T?m&tyVH8spO78~>CIrPcs37?cy>4;D*Aw&az%E(uqGN>DmEa=RNMi? z`le#>KDQ~_6;kma9(ad!z=1eyKN56UGZ1248*<9ci>KlN5Q?W_N494gbn=Q0Oj1;w ziU(7gsW^BYx@9W9%Vtc)u3pijVMUgT1JKY?u>%$~v7t8!`nnQCU@+^KiUFx8yV-7t z_7?a9?Tfg8=62ErlyAUCm7{e59g?TB?YYyKzj<)2rs}yk5YLYwLC>%D#;yq)8)fI! zK%Xz-52VkbvfM-D%vR2M;K*~Q3#gGR+xZ~uxzmN@g`#-|HJqgyE}{lLcWMN)Wsw}` zRgI-8-LI~rl+O8fkP}CDCP7E{XUp<_f-d}l`_-Rxzj_tDf%&`nW9Y)VM)Gu~+J1F6J?7Z^ZzN`6hG!435_zU3iKnRx)nsgAyM`-u9jcu#_(-Q)3d!{t9W)#65?5} zs3AFto;?((d3F>@dbWZDJ$qZYY0!2jPU z$pBvFn?4e58i-butwXcwsaemVT_N?`i|eQ8d8;-K#K9Yppo8y4ys$^xjZ#;(!WZAo|^|k>|8`nxt;NxTmhkyoP>I@x)TXW zB@jVH#W{H{r6nh^bcyHkY(~#jctz8~ip+D}(a=2i7)g3=9tqm;6SbBPCg8dCV@27m zu(-Odb%ot!V|w97-3oqyX9mbj-NlaFln3_Prr{9}Y!{o~1QyZrvq{kN6(GdendFok z8)YlGZxqw?-48k>2qQ?a>ABQeZbQK1QT870aPQL{?kKb?Jb&#b?j5g7 zY6b`5#KlxiCtm71n;q^f{`~bD(flHm`L|peL!(?V9tO&^}lchbt5vwamaKM*QPx*kcvU5qYpDazL zG(C4arRljG33_e{Au5_mPProU+-($7&&?o7gJ=7upN5+T-BkROrF!&?|H)Eoanq%m zYRzyUskRvjrrIVT#Li90DYrBJ(~zbRivKiZZ?>n^`*=mI!iwy*{k9b2HRcHvn0fb#+_Mw!zO3-lq<4ZSO){OTUfJ5)<%nGKm-<~K%k=Rt((J|+wlkOwr#)>+B<@^#H+S# zn!Yt`pzrb!5#MzJA?9@>r`){w>bVEn$KPIA4vu8p-y}HBn&>d7=yEQ)SL)oV4Iyz@ z14?r-*n$KdR+kVJZB99wSScee(*pi%bLu^rPM=@PJ`jF)6alCIjCEPUVz5Qrb zTQ%!8w2QdB)0OAomR`YOwQ-;si2M|X&Gw!B5$-I?zRtvXLmgg=%3`mi>;;ZEtTTw9 z!-^A+_ZKDc>R{;+hiybcW-1}cU~&Qu(^pbz1GU84npfS=Zn6=mPx%c*ba z%c(=4J<74-0=mkdO>g>F1G?~_ulhOPkO%h6=?1hBKMy0p#2gAjhIbk{<-=Jq?mz)4f^;n+Bp0WfyTH`kHP;yLF=*(66}u zbUN6U(&0D|2X`Vt2j@?<&h{s#+|KxQ)IchWUE99^j##~z1g&0`q^S5hs>K#k!0hI-Em3 zS`XIErZaKhO*{)k-b!0ef;-ZyNzjl!Afk!IulP?VC-#c}=ium?2_i5L<9AShp9E<- zZ1rsP!E;akN)WOH5Te80CnwQiwWdN$9riPHh{Jv%!KQ1ewY+K2JH?mmf1_Phs?DKy zEY$`-3XME#_a-5!<~!S&obt}%sdglU;;D8jIAZm15@PjZ35tqS?eym%P0v+=&`C;y zo*PbxiY_Ln+#*Z0$rMx1-9(ZR&M&d1ecuZ<4S4P!v!d*I*m=59_=BErMThvYvmPAk z=yH1jYwc1V*e?OMe4hul%09<7ewDq47Bez;l3-+R10jBxPENTW@MOO>3}F2RNZ$n^ zJlQ8_v2yNXd#}7j|7`;L9OK$2BH;Z|6L1aeTYA3w>{bwHmp5(;P+RZsF4nC zM}iLC0fcncmYnj=;v3eE5Q=YD4`zEgXM+f?6~!6fhthP|i%1A@*!?8vuptJP;U6(2dP#)*gB$>Ojx=-}HU`HI(p1 z$vixKlhaZq2@dvf%EjKhdI(T_m0byrcxE~Dh*e)vVaUbBIk%G1;u%WQGpk9^Gv5(n z;(Sj|xgzt--xO2Nyz&i58k{G=rd_bk1)2stvwkeR>dYIXk#0{9<0_i_MmKc>zsEsk z2R-3;lY&iIo-W4US|) z9}*nLksw0j(6VBEDb@>O{VB$qP{)y=Q;!8|1he=KwggyN5dPG@_%_6)D++$2TC zkA=>sH0N*yrI|isNicmbAVjxcOisB)HiySiOy}?vlCm3ldwgdz!=1(Vm~%w)>&!g6QeS>w##SB@9Ps|=Fficw z4fY+Lfiyjr{~glw-0ZhN&~pt5QPG{`Bzo?%l@L?U?eHf^dM=;0riX66L8xiKbN|<@ z0WVio_~hH1QRVI}Wp|{tC(`)sB?dAFo7JfDm%4JW4yXR8lBE!Vu>K-8rn=a&nr2kF zr$+q=L?x=s;xEc}4wMp~ou$NQ3n}s0w#=38xFI6jpCvwfDm`diD|9jwN-B1OniHkz zn6jp*W~n7nFoJSNyZk9)>yrS-jfK8>l;WE5ED5eDPlFhF^2$>|K1ZozSDpZJDM@aN zf2SOi0dE#+GWvC20q1)tl0iv*Q4R`Os)J%R(SX_JTUHhgpi%aAYQICZv)HKk zxKK_s%VzX3D~+0urJShxSjvgg$E+1AKCZ5=sF}l(p#gKsd>pDe`u)k`3f2sbaMsQYn=ydjyX7Y+FL*QzxFc!>BA*oVP4; zDtY@U+cR(9BZn*V$K;f2v_$zPjK=epMNTDe3uR0rEOX)~Ryei1Jrq1!8(6(m%#oU* zG>7k!h&c&0L(Lo(3k?_>@b&tz+%6|d_WlK}QLZCQg(ZLCx;v_@iwS}QR>8!hFAdlY zxb!WoEmBaFYYPjC>JHcsp*cC_9>v)g5qF>B51JiMWx3bMc|$o;a+H&qbw(vdtX`@! zC9Kh$l2DE`%AQH>XRG$lrN5hWp&5Z;$%&f9{-mofd{=|XDK~zUuJ61vVKJOQlIE^| zfl!?M1`Co( zETqgS*RB*eV(JEj%8iM#k8*8(T-Rn+HjQ%A$+=TGtZXWSXZcYXJgdEm#-`+yYqWWh zSf%tpYUe2h*0q9)C};DcJ@s(|%L1j+6^o!sSFBwc>PqJY>zG=s4j{=`bz=+0sslNU z)j{MWn%g~$1_MLSyGwLg>V3zQflG3`v7X>)h6q@%GKr(geUIB)_ZFM)>w^l z+mnMwLi7krtI7cQo~jIB2ss=8Z^9-IU_uy01tzRIZoV!(EYVu^0{Jeb@gTa5)keo5YQ;w5wfl`{-7Tgl8thsbwaQzY#|oi za3JejdlHNV%h1YjSXeeNoG4p7-wuXQe7<#Odk(HI+tWdZlEVbH zIUM0!YDpc5gjU2}6O=?Yy6)Wrp&|qM0;kn~Bohr-Ft}t)fV>Kwu8`kHQ zd6TDV&YLemh$*YXoyF%33;o9D&8FbU;F?i29mL|tqLH< zQXgZ{g9N+k3PQT-PENp&8jD^O(|L0YNyg#?wxABy78V^W2^`X)^M-YT185)?>&J?+ zeR1}2$LJ|&FtkUx7J9()v4!&yi}e=fl~y#jc_o#IIj<^c8e=&GgbZakIpyxayyCS8 zFP|Yjftqu3$l;|pI8w)$&SCLlan4k)@v5*!i)BKM<0w0T+IfcnO0`t6?eP{+A7eSk zcU4^tV%u}PLW?w(uacy>?|B`skt6epoN@=4xl6-nAaGIk7GC?@rq@0!b6l8LtU+9u zS3giAWAP;k#-dOF`9I;#;`3^?XfEFWu`;p@jwOyI7I|_wIMzc>9^9s3G=4rhn8y44 zHY-Kzydoj<3WRjkot%IlbzU7#F^$EsBpHh#Y(X7`+Q)+vbm+Vq9!3MP2(Y5;IxgIQ z>%y(|lb7kikI)-c4$=jYRgep@Vl8EfmDFoytj2>Q!<|5=e7I4TU%PMq3i0R%8xnv_za6M)AX6YTrV&FQhJBr@l{V-Y0vD1g}$H2VvK# z?@>x)v6LiZ@g?PG&N6bCI?Kr^AE24DI*bM#KZ56*bJe{+qg|Ao)+6S; zU}|JbpDm^we%8h{<8TP!=OVmv`B|@A`msF+CuO5Kxa!JA+u&F) zI@n+FBV;Kd&4(zg{48^VHLJyk)fJVt$4^pCS|6hP|I~sG`1~KT+$%lBm0C}FE$U)o zcr3z)vkF!e9OO~u6!+TnmTcvq5Q4duXYD6`_U1a>hAPNGF1B(QIi z6ACP=e7Z~2fDa%P<<25!xN=y!TJG*PKtGb*tW#}wcef!gq;n5yXs#NXK}aUb{*>lK zX+we&WnU0BQTC&hPL#GJnM*8tEkW);4krpLVh1|3TuP{p9f(krozegnUV%T*IuTk6 zH_uqPxiC={us_)(lb}DdAjFg#$O( z$?fXl54zU6({}TWb&{jX!J6Bw`CPbRlT?Vh_@YD$Q5Rp7NFiztPzqYp-_=#5Hh;4e zbzu0|JnR^Ax7bUD-U5Et>Q%fwQ+%;pta@S%!>sSYrSuCWqwZ?)q zt;Jjxo)&Xi=Ua5JY;{P7#v-9Ubs!e&$BMEaA@=SQ{J}uB#G+MrAj5LSg$FWP1K&1R zEK*&FB`a&|37-UG$@1DVl-A^g*0JITGDkru{y;{mVl$TKust1IZ82Y-KNObd1~Z2Lkeos*M&OTERh{BB|dLhH9J0USS(ux*8+qLt|2)*A?`s= z;^5kc(fCCNi)|O?jg-*l1t3dkOIO1|NLQ@49qLLiI#_AjVj*R<84D@Q&D2=zb$pnh zLsMfrBy*sLKr8~R_yd`NoEQFqOsDM`9y_PJAT!4HOO@=Au^LB$u^I$IhI=tN<(`c{ zkeLFZ_yd`n*q%?rXR|#MmIc9WzciP;kj~S4xJkb)wlz(_{Xd$I}%qOZnR#0 zXl3u-dY}bzSL+?4+B+c#l}q$8n6;z}bBjg13;Q+J8J7oaCy?M z0cQX?xo^q&PB~-25eKb*9dLCJ>wpK`7iF)c_MB>Gh48}MVqtBGCqE=3v8b+YxW$u2 zzAc`t$t~te-EQUt>vl^#S&2Jfkfk51atF{r@NnM2BO~_){y;rTc1O8(x<9ULgaiLW z;-hdNbE_i>u4OFvEv6(^^8N{#?S8=@NOwlFDEApTUnr+9II@4;yC+)53+NwR{{T*p2mK|d`f#JTe^IpvB*>5E36Q%qkp`hg^u)|yB_F((7U%-M*% zaxDRW23RQT%LgdK^a0A|P!;9A()?zL?83EnGj?(TEZBtvA09U#!Q9@GjV2a9tlxp0 z*u(l=!I1$pVJn^+8iTL_G$pTm0P*XMwh$`hZ!fl>PY)(RpSA}fKJ7$KxiZV&9u(7k z)8QoL+^~n~802+KPSBy#Z3X-i=ppFb;&THlg%{2Z<6RWA8keKGOk zhlfq5EcURTHN<6bXHz2`)Pfu)-KpdR9HfIA9!BH)rt2Y8h{bHSU@Yz@!LC?-UAkhW z@laQ~Z+e(w8jGh$G8QZoE;?9>Ty(rZPNKO9)x-m_SU*;jJ&q4S`s=Nyx6pT#Yo!OQ z&Rlp1!lK%Rhamc~13S+zr@h=)NyT!mMT`AVmWGECW#8dLi6wf9`BeJk`-bjC<>c9( z&SCv>aSp4Zi*s1oJlQ!d!f2E|iP{INcCA)!=lL7ig0Yk`ibpI2JG++raW%NYx)Sk721 zzQ?*ss90{XV5xG81uK$EEY1TVv0zbjF?TpQiSue~7!AZCz`|P}cm(e<`W*g8sETqQ z={aTjjG}qN%Hf4IkcIMP-msLp#EJ#d#Z*=~515Ld4ne7#teRQ)96uc*$EuLBez^=@ z3X_Wiy~c#XZ=e4J&_# zy3tKkn^_Rk2O+&ka_`cc1YO(@M4)NFiT|rCHv{Vm%oz=HqTH2wuzdsmO6o@3KmfvW zfl(zNQsaOHXmL)eDF-ZOTsT1ue}D(}CT1-;utibIZ*x&(`E8kKEIlqxVDavN6YvBK zhPVyY8W!tD;9G+8GyXu)YPM(QvJSUqzt{L%Sffp}nv^e}8wfnLU#HqPq4EC7@INTo ztrM*=wAe)3izLlu(RVSo1v$)ugxcL^F3WKT%nc+2PU$!sxFz@lt>2O-twY+6;tlTYwV|8#D9E*Af%(uZM7Wgi{DZm2X zg;@N9BHtPdDe|owKPmFfSg-)Mn7cg)F_-1Llg&-2(;bLKfE8t1V$a}O;}5#FYTml6 zxBQ#ou^VQr%3W9#SwUPDMV9!M3m+E!jwVjyN#Po8&7$8?u7aFPlp__sIl%QV?5&I9 z0Q4Ogew5vb+ILayEcsoC2PAiu<**w`FN>t&2K3cuKB$U8Q~7Z9~jXe+VO6Q(b9tOE%Ud54bMM@@HP|a@EeF4G?z$)fq zd}Bg^IA|=}QA}gWQsoj$)(aPNS@d3Xu=IFHhfU=$8VFpJUC0ZYSM|b1D~;QOmVAbR zvGWECjmu_vT^a<>8?0(Brmz@!z?ArT<1YxsFKk$`Tn4wCs_CHVPllVhGH5E7B?4jS%F;5C5Ps+etAfT#v-9m zc_0=6R+MeR3!7$oVWZ{D?J9>AxC`@!)yNC6Vrg@U)pQb!73-*rsVsjUFg40P#5I1l zuJJP=6y&-Qd6%e0F|Rz?qKv{)t7M31r^sJ)YFXKD08toX$oi4}{Z zOIIwpE?u#1dZ;Un6>F$ltXSP#%$4HgG`G6q0vi7chfdA?z_aft(K zz)KveD|T)-ky+B*ZX&Z#x!i-5V&=RD%c|sd50>S~1Lg#L{f}8u_W8yL(hK;5zFF-Y zHC6RGrb~SW=@3014XVq7NGDm1Iy@Mxn+2_gZx^Xj_nbGPS@&G_W2}uHP2@}2j&D^1 zI$An8h#bDS4USYlXS`VQTpU>eLK2$Q&;u^8WK5`x9%Wb5h4!!T2THZ(x!u5#%I3UK zmCEMK`@HWep|ZK{$5_(b=8n`dr@49X#N6tNnwz;Bz;A)U1cDc3cjgFo)e+RBzx@MD z7B4T%9Vv^>YZWPr&bd<;uy`(^EPDK$!|LeqbB+{A=ioX5lELlgHMS!sa8lN}(ru|mIjj|4bcJkyD$lMNs|pY@+=N2x@pBIAvB%Fj zQkGp3k*b-@)zxSB=N#A-a83N2)0W2jYkVoH&REUD`-B=R5Mq2nb#Bn8@ezIX{7djW~n z*Ui^!NYb2rv5KoX$`@i`VUwpksVq_ZWjV_NHV%$cIo;?WzX%iLf&eevaR5MtoSuriAWE8bf?`jKQj zq+C5?I)EIePeQqRn;Wc3A8FJL4{7AU7C))#&j7Qkzf7nWAjD5?!-I{ohtZl| zY5>0hfNzkK!#81}s2!{NGkaOyUp&uG2#7{UPGW!)zXI?P-qv-W;187YD*%NJ+&}md zfNr+sO8~lo+ZPJO+;$+u+&1KJvh7b!qPbndXdv)WmTy42?Q{hF(5`SI>V^XLg~|2- zH8K|egD(T@#c8~^PUB^wx%eTCd>KGaL{!aL@C67N+zN6M2iFmH18b`-Ol z)Ff$cZ?>S0j^xnXL&yo}&{*{gqrt!wU-;-J4UW-N=XV4Ov8bd*#^QhQ;R0Nw70T@8 z&^~_QGYuRW+;pnu;I1ZzgX1?1k_R_4jK(i~euMFH;gjD5x_IHk?=Z;Aiu~|_UHHi7 z4b<2Cih-CTUpk;U{L+D#!%r9_o5Qaf1kix5*N+utdv6ZE9f3bEf?r68a%1#-!^-%D z^9?^IP?$IKPUnH0Z{*Vlj1@n9AoC{Q#fHKUCj^X*vRk7Ex2<-=4<+D72jtXJ4!?>Z z&XLb6&^d$1VXTIM2xzoTIX8Zoyw2+>jPCl_qqP`-Rt1p*gkzv9CktEkLRH5AS_{8&OE7WuQGk+JARf}6XG zX&gPrk2(Z8i(mLupjrIFho5VZ!R0{6;0`B;8YhucZob8WA7}`m@$(J8*-#Y=wvbqm zU@X1>AziH?C(xCyVLwt#=aqccL6+PrO-Fu`=}7vTgT{hia|rYhh(&-EWe?%QogRAM znO}n_l#c--@6E`K<_X zAiw?)7@oz7UxEmr@wcegK2{W~is#XSvEnBmBv$!3))l`G5m09HhF^xTSjlG~7^_>o z4t`NW%;jexLOL{7w};VSU~b`A;Wj!CetXfHKc*(J;5Rg+s{`M) zt_}tf>PqJgKeb`8;72gTT=|9t&8_Ym7M42vctxOxKrH?-E6P5|r!WueQy6|5Bg#$E z1J=YZls@AZ0}AJ>uJ7}}<{dwDQJ8o9c8A1TKCZ!7SNCxZoUdrWw%RAZv4QgyIkl7{ zAJkwXum5*6G}io%M!2|@f{;rk+Yuqk78GYIKwdRUpoYBt4mZz10oVXQWSk3>g) zx#_4$PNKP6htXhQiqBU&F&6%O)$8-(SWqKlu^S1-VrLLCoL$K&HzhuAc85@W-tbc? zx+s8PpX7Ybd6% z;5SsnTz(8i%;jfVL7OFP!+Tw4$w%|8cqTDh)IN^In%&O1u z!y$!v#ZR0R&PV(vi^Os<3C1$-hr;i+1cnl2N3qZIwVS07!bd8}8KNA1enp&l$rIr5zrn!|6hm^sIX%?bD`z=}WI;a6P>4|n*H zkix?q{S=G6Xfv2S@sBsaB%!kj0`Sc z&6iwkaQuWzAX4#%JN$-=e&;0*Y39Cs@P)b0559=u{E|yRkv-gzkGtqEbNE#keYk_V zY|?afdXrGofP??9Sp#1FIok10e(RE4Zbw!O#_Zz!U#fQ1UO26GP|JnGlYf~d@4PDfAMeo$g z$@sL(PNVAb=t7)k^7%X%yD4Kr$_-UUV`WsN+|kNts*Ka|!kjXiDdWtPYo(0cm2q*( z?W~MFl#xxj`pVc-8E2$iN*T?Saem6J{#)$WOBti^*#l*?P{t)G_og!TR>qMj_q;ON zDPwrbJ)n&C%IK4FH!GuqGR{f4Daz=qjA1EvfijL)#34Wbzc?cko2tAwU2x~`kD z=$jk5oPDfb&b+=O9OrN)=au+$ixa_=d_Qe$Mwy{rsNjq&&pnlh>~ z;Z9{#Wx`d;uuRx875KB2Q5EO0 z4&OVU&G1B5`>?2No^lP9Q5BUGBIW*CBZIdf)IhZtWth)5 zOu3JgQRVa3m0>=wm2%H2qspT*lu_l;8Hz3`!2WmI|e6lIu48>HM( z%J?rhur@U5DpbEyY!&+95A*E69mTWel^arSDG=nl4Y4xi7I@KCDr)|^5$k_U^eU|X z%IK)6a1+*l-}d(%q#JYX0F?Gr(XJ!8(hkuEol@>NWw$6^muuqJQeMyOn4X>~*TgrV zp0?w*#^27edUqRF5A=zmXs9mm$E4gJzuUNnsv-;R-8laNK?582)j0nt!$P|!&VRn` z?y7H`8(ckBRP!^S>8;FD7~`*1wo&3%o$$MQ6rD??}0w zVxn#E*)@hlDR-+!>co&bDR-$yen8RcRrreDlsj0}x+E1gD8|M+es|6nzvQx^P;*ob_$j&Kus7IcOA-iDx z_sH#voT~lonsQrtWMT~2E#=nzY$H8AhBU_A2aoiLAx-cDK##Oh zBRwOAv`o4Gc;tu}(kkU%^T>XR>>;NsI|Fu0xtYLWa_n?`=rXcBqw3;isWPfAUKS{$>f+@IWmH|f z+^vkNiLE1sIX5{e;{667waUJl-fWn*XD|8nA!SmgTQOGwI&g$O6E z`@oh#Zn0jSm1;dTpcSXHK3?k!`1VDy>*^*9_4?}NN{4!2%DHdKhk8QFy{qifq0RwY zhT3esI*SbzS}zW0#hH1C*SZA1(kLEky@a7YP`w<68tZ)!o+*DVLye6I`--o@mN6Y& zqIKhh-kVo1hu&ios!Pg^_r0&*uHXo7)jYftRqT_1Ri$G+3HQH!Z$)>vv4>gvm5p^+ ziPlXL#(H4&a;0NEIOVQIH(;;VDuEr)5O38IyrES*)__%|V?8D18vEXg#)|z|kaQP6J!AieK6+9@C}?y)P?~+bltDc8T0J338K4gB5Zaux3XpaU?f?#!OPWvxq8A75^h$knS}u4>S@**nB{z`D!DgFYdlg9oaYLkCq) zG-|}gh$k99FSjAF{Bm)R0}^^{TOv0wL9Tv@+@J(GhYPggeosu0d$C0Bq;k0`SK_Yq zwip-~cJVqTRlQu5skrq%+;{K^e&$i^i^1g` z=(X=Y7sRf8_wovEEm3evxdO3pWQp961i79iazhj3b}f-RH9?Nwp)4NYX$f-gmB z$X!t)_h?vd<`opYJle}yqg7&C+?>~!n5v$Ey`>C$RD>szbHR|w-ur&J{ck4Y(bwG`**Avli1B-5 zJ4MXhcqlg9BWXpMJy9`DZHFznSh6v z_HvfR2+u6-~{FoW=nZc{L%|GVxLC)!-W zlepjXjV1G4D~w+m=8)DHzcQ@5eKCGzSa*2!;W02o`@yQ+l;H{OjVfxk;}Peim@+)s z9IXt?t9BT_SN8ioVyYQ}2bzbes7)3;$84tzyM2wvm(6_JIofs~&6SS0IiaGhl+g({ zr}Sl|Hp;*~$W_WP&)`no$I39_sV9eG8V~fblECVut&tFM%PJ^^GaREzcP-Ww_aSgEGuA+$g+E z8KxaK<3=gNv=7G18DNO^-|m!go6m6L?NAl9a{-&mc&?@Vk?lwr1?h4F(Swzt#%4Z$l@R>Jnd67PJxoS+OF<^{MpuM8W^h4?y=GHiVxlX8!MA>%$MX5mG6 zIIp5Mx{FcGQW<99Sd3p8=H_u2zcOq|tSEXpYsGXKzfH~Y`f?U*H)mdg@oQU~nwMhy z%CM<90pnMO4R<2Oj~A7o<2;?bS&ZMmxim_^@waW!5}^T^4H*cyBdUe54HcSU-t8?VL7X&%`t z*5*3AoaT`&6fxIdkC)Rt^5<UZPj3=oXVOu7dz zr}}r7E>}?-*S*;Pdt`(nmh<nT66Zf{L4$z6frM9hy5=Q zD6z$U4)(uZbf}8j>Gyf;|5Vh{X)gAEUbMZ6+A{nC_CFrkNs*SiOw7ahJ+hG^treM% z@q1*|O)@TX;){4W+apV2$V*uNfmFHRWvu^RbcTxBKwrVjnf@&&{;s)rb+|aey+c)l zO|%6Vzt_++rh6gwfBF`bO^rnuzcOroy^8&xZ@a0swV=I*{f|d}yHSR1XN=de|MAGj zikRd7g_l!3@{%If&l?!OM`py@yovGSRV7KAT&&GocsbQ0BNZ{*7UShqkMvi>Y+xw8}G z#y}2vWV!xc%Dv@Zd^%APOUCz8?g@SC%3Qt_*Z<0}$+iqHXDY+O^>4hKrVQJ+evon_ zz>rvERJ)ydKE(YGk9>2zSY%2*O1T3(@|GeNrH^s{$0JWDV(Zf%OFZ%m+#RL9IU(OOIeWHl1p;W|EHp6+V|N1dC{g2Ena2nhi_rJRLq>!xc}ib ze1#unBY0-$54isI$Qz1SoPWgmPtCBU>L;B4lwmpfGtPhdVwFYn7o7k6t5X%K%-a5n z^PfkCC}P*@zv2Ank;4=*^}plgRFCYVh#CC{_WwXI3R@c2VE?ZS%gH~n|MzWwy+#IX zmaN78*CQV(VrSxYDc8ayFDhco{9h@zrAO{p#Fn4G@p6iP<7sNFO&kMPNuiZ>;^d(uAv-b|3K6|n@bop#&D`m2+6b-n0qDr!Een|43?7osL8V&klr zcFXh)Dtp^~fiXyfS?w)pAs}c*u9%;9c7riN_WY4r)u9;vB_8QU`L`g`QNoQ&9f z(JJjad*oe3tmD>c*VrS^C}P>NZ`#%K$nA<)4z@|VpZqIK6BV(X-!JX{?UB^U~_KMiNI2hyiNJbGGe^-p(Bi~#p z`K)`|)$+*AirB*2BkjKT?<|d1#OBbUY4@H-hALt?a9G+s=aHVVetM?e9Uf^JYtt+3 zF7wFNidg0zo_1#ff%7dXdZ*p-UUU_nF9R`?`lQ`~9$BJ@wK*c~nt0?{MQpAfnRXj{ zWV#~el%vw_XMHKk;?y_ozEFlO!AGavJN{*-!P?f0J|^v+_DBy!Y#l!q=YNm1P{b1C zxU`#~>TPEBOS^NuXbly$f%Z?k<5bi}aeUexq6{1G2{`}zwy$0;PBLTw&i@{HSP?UA zVA^Foa;+j3(Lrg)m$PI`GDZ<|(uryJmPbxh#9VMv+CAZsZi-ljo}6|!dt^^VY+QrW zZoEe}i}iC#+70!{A5&yJ*3S^E{~q~N5j*h@#rp4&R}?WHg{RcyaUJ>i~bgcg#83Lqu_2^K(dWeP&C2|KO$Zc67_ho|Is>$LCGyV+ZzZ!38 zac0`>?M-}1MJ)@?O1rH*GD8uI=-Fwv&cDu-i?tb!{P)O6AjJb7nP6Z~)nH5U2+V)4 zp`{`g#d9$KJ+ieT7OQhH|AAnZ+Y);o=D!zRHK}<1kHq*rvP2P^x}z}vJ@PD&V$)Y8 zm_AK4STc=HyDvYnJUCww%aHTa?q41mpomSV3)1dUk91MQmemW>?go!EQ^amjj!C<* z9*KYyTl!OirC(nbm+P1yH?KtQ=LESMAP0Y2R$Y{KD?cut5*Mf4hhRuTpQ)mDRvMdj z^F4B;BIb&5X?LGT_E*F*u>#jW9@$Y5%Zc$=|2$Gd5zEm_u>N`E+pHLC!MHT-I(p=7 zAjR%GJYl#qRD<<80r~%tjV`B%^*Ryx?~##;*h-yEyH`EZKZaa}>pzclR>V?rQrcbX zk;aO&)Sc4gv>O8i5oo21DQP!M8LgFZImWLHTR5-4`tOx}Fi{+0A-OW`ntNoPA~u|< zX}7sY?gdipstw9F_Atj{nM3?P^zm1f=DSM7-y=tssH_=OX|`OIc9VR=ZDJ~?rQKN` z$xnz|S-V`NB;~RaxjG4Qvmu9J*>&61X}5vz={iMh#knT!+y^$`ixjZ|Uz>J|J#vyF zHfyd+yC*$zh$6Omygu!2@knz;EG2G8yGuN>c?`J`*S{WFbE#N;hNi+zY1hjm%N4PS zb#vOa^2h>3?6h!8+HK>J2Nbb9x;5?c|F)4%i?z88>z_x?SHyg9JJvss3{b>!Z#vdL zk93Lka|hNxAaK5|@^@nW_o7>?sNMLx3+ul}{=P(pZUekK?T+-w3LwP^+&N*cKVKrZ zV|i-8D2w4exc{-tyfGox^}V?N;gMmA*u~6!X*U-Ll$f*c$Ndjw*z}o!`1`iawXK~M zW+MI`*}TNioy!fCTwgg}Tw?QRR@!ya&MX8Eq}^U#<$M*jq<%2%w(!V(ikN{9rQM%P zZP-^TVyo-JY4;fr49-F@8~N`=Pl_pd1o`igLlm*)?NN;1Bh3{t>mS4TJ+iqXw!l7) z{P)P33K_9~l7{^E$Z{aXNw9l@&z@EdHtU|m{V%WKHbu-uPa*#A`}iwjIsY``?~!4O zn2Vl4{5{e;*3YwPceh9ORm8mbT-r_X$aX-A$IvQa3_p((FW4C7VEy+RK2XGh`8?Kt zkIaj;nTz$`Bljv|qkAFk*1TuqzCsbRbY9vm_sBVl*w$`-+AZ+Nv5HviUQD|OJklYi z?WMGv=8;_#u}SkX?*DkCwjyTRE4cpy1Sx0^Ux59;7yWdsIK^^*A@=_sc|{RZvIzTs zkIVv6?C=8;9DZp`!>ehxbcwm>v=R*mC1~heBG)NljoP|Iu1kWxA1*GQ2(P8x!LX>x zF|T9&_a-h-Q5*ihu>O1G0Yxm2-oX0*t_^FNA~rYQ#QF~e>dm`v;ric;4uxp34-ZYS zxTC7H>9rX5f4zoXOEmN@_YJzX>+ZMHuAgtX@*;79tu60h{ZlJ#>+~+xKV`Jm^W~DX z+rhV;t!*v0-^2OeBiF@{_i_Gz$GmcpBIcE)SpPh7k|K8QScdh_BZnwrKK?h>KaVtz zwfO++pGP)V#I6cH#QNuvHDhGNcK-he>z_xKD`MmM81eVW0!7TWPY{2PJfMgL^;5+E zZHcliAIow72MjsYjE{+ahWLAAs3MkLpX2_IM|vt^)A|cs|9PY(km8(qx;*02Yn>9g zXAfB2qWRmAoaD{%kABM&QL)_sZlA0D|@5zExCaQ|bmd0~tqmWp5F z{)b0SRK!k9-{Ag-N4hCun=FU>A0F9L5p(~yxc}ji&0@$(-2d>%9~Zrdf{^_rXjc7Hle>~Dz5t}+c z;QGfSjZ1oMpU~^y=NG5`kJ$ft4J#C}vHp~H`+MYdAjNrhPJ-^cO5_$L$c@pSY-0Y5 z_`hi*KT#2z1-~HvKo9^+$zO5)_oDl%s3qQSIRATOJ4Ng{_3vpn+#~6j`aja{Xpek7 zTHInTUz2w2J@Td^X2G9nx06R6SHx0aEuMdPb=G3-`Z(V1Tw( z{GE0$dC|TqYQD&)-3*VkQ^X>b%D9|I8pYJ7Gj60uYR0r>GOoWzz8fV&w@t_f8Q0k( z?7d>*6B9;J~X59TAX&Xc8XWUeeG*rZf zyIIDa=aCJ86g%vagyDX2o($Knv^USVeV_s3w-{`J@q3kzsi=)|ON`$mHv%c{Y-K`c zBUFP8eyfaoK^hjMr%q=@*+#rwqc#aI$`q??-x_V?;4A~{)_VCDD zMQrNtnsN0#av{Prrj^a6im{kJO5pu|LM|k?+rz@mrg=7(WnnYzfm2 z>z@~WSw-zc&_3fDcw{D!;<0R1J{C#ZOH_j;$pIPn{wwCEQx&n{cF4Fn9_gisIlE)V z-RY55ir6ITlyQ?hvW+5UY3GbP%Om--WVp8G9GG!OdE`qV#bemMd<<}l`RO36f4<>^ zF_m4g{(0nTMa+zYGw!RGZMYYdbk?Z6GjUiS)nJ3~iu1qM&?ct4TgF}Pk?mv1AsIKq zBbkz3rpy(=)D%GHio&M#i;NhQ;E{jN8fE^!RDwJwwjQxQ#q=lOm?%?2KFWf{ndG z5u0(tGj54ThA3jWH6r7l^~hn0*t9(-yZYE*hSrW8Fz+9{yJ5x zwh@oaxFbCBA0Wk%Jt)D)b4uj8B*#o3n>W|Ib%Y|8g`+d>UXSdj zh-J$88Fz(8b|~q!cX*0KzlO-Tt<8AE z-y{D~#C9i_;QZ&2*A%h2d}+q*;E~yim=`Bx+y)-G4oI=D+9pK*tP;8U<#L#y*7d}U zyK7GINjaNw)4-63?oy&@=W0~muK7!9%-hCMf-}38|#rs5nFGr z%(%fG`E_u7tfLd`c@uI~E96wHe_q4mB^q8$&~SxnFn{MVZuzt3lXDcY6|^$r7I@^? z65X#Q=x(7JEIqEuxCvgvmWo)OPs_Mr9$9;G@yx#(@%PB*G31(z+t(wD6fqB9n{nHD z5)N-*mb~-8TYtHx&kTA%`MA4f-u?U z^`?v)gN9&O9^H)bE5jE4TQcrAuln1Q#344gTQjbsN8Scf-08CNPGw5XPz|==-Ij6d zp0=Up6tR2#w`bfJ9vP{Kxo3LDz3P$vikRtlWZc6Z=^R7u%(!bk(pV8ovb!*TkJMAd z#(j6jo#>IDPApD@dor$@NB*sdP4Ig&ZcmTApooR;zKq+133Trh93@!5RrALoDHu(hgesTZIxV*EfLYFDH$W!(A7Xsr@2XWUTV z_Ky=}*w*%yjO!U|yCCD*$J#E;xZQo*=VNUbW!$E*wy$Pf{xLDc`h6|qz6V1xWjxvz z4>pysfjmz8u#9>=;~w-HIx1pQ@Lw5swMTYU#HPj@8Fzt4>L_C2e>39-dgO=Wi*x_2 zj62vPOBJ!iSd8&|~6p*QjQmqKa?M8?Ehh<}BAbE0PhsoUF#e}%jT#6MfjLuPBWkRa#e z9mM}_D*go`dwm!2uaKz%kz;rd@vo4v0+CjH-{Q9^ve1!9Fg}f^eIVT_E{97Sw1tQm+PjLRNkX0J80q5VhN*l}* zh`inZ6zAUxDbd<|X7P0jIYA(D3;G=XuaE--B1ifK{9hsM1R`hQOZdM+b`prR8;AcZ z^P0WCVT-|G!1~zb5TF_`gDmG~|2u zzd}X`ME>Q`5Ac75>?aVpdi@ChSI8a$k-qa2{2vI`M7fjxjQn4*{yNGZ`oCcRSIBz; zk;eZO`@cdS(~#e=|10DMfk;RH9sB=(zj6PokPSfm`t%Ob=RqMsj%XA1KP6$M zKxD7~!~VBMTH!o_$orIku>UEfP$1F;$>xtKWVk@&JTRNzppbq*{F?3;qG>~euYU+1 zAL;i6%jN@APcI8Z>R{WvtwQb=h#Zk)^V$lzQXtY7VmAN&W@&}91R}>;!{+N1G69Hx zM2CfFdZ3UX9lWN^FIE!T8xjVENZ2&OKh|0{KTb*5pdqzw-d7>d0`Y4%I7IeJAwez; zJK6l#)oT6)B0p@bWApbEQYa8<$DJ|%3K=dCxdhe4{41m%5WhahhUnAK;42U2R$f}d zhkG`W^HLAAs`Yq@GSu=(RRNt2DxkcKwD zQ6c*YWVp!d8rgh-LiP}d97toEmno!%K%|+Q*!)C=d^5}&yj)(I+Wa7eyavQS_y>Z6 z7x}-CAf2+A&Hs0!9K#}k$WUl*^G_8rRUlHIU2OiGLdF`s4h-qFmyjSAvKBUa$QZ5`5~M%3v-wY}q!rH5koGozTOp?iMB222%^y+7u>z4^ z($VJE0YSh?XYGXbPqDTatnv}f&NiPRSmlzl7sjtxHxBiWzYE5%kdFi+t+_YGuaI>D zk>l!W^Ia9PMj-O;Vjr86LKX`|j;ou^KfhkuVmc7NHQx=f=CKCfdqF-}LrzzBo1d#X zXfC>z`&JK|Pg2OHWBlRX6YIZ1HURM}H7nSe7w!)V3DQk7Y+heUSZPT3I7Gq>Awez} zy=?yCb%T(2Ia=5BhY(Gl1RrcKt#F{tcTo~n8xnpG zk#M%b_eTidiJ~VN(>zwAR6xe}(LG*CoANq!TQMm z4$D+B7sQ1Jsk6|kP$|&hlTXIx50OK z2%lr{4GQ6V|0vxmM}+X*W$+yt!Z*+0J1T@P$KV?r!neP{cXS9}6N7I^2;VnHdb1{@ zX%O`>I1LBWiCnSekEhNauI0E_4aw%bvK%~DOiTp<)Q?*`?LjI$Wu>z56%3zz{ zrjUaLB7Nm(n_sGsPMWkKHa|@v^|Us}*nGS~emTM$x0E*2=0_;xU4ck%J=W&?C}gcb zl|ZBohS_}M)zSv@1R__s;WqzBAteHl@iM~Z>lAW=K;#NA(&lRva)3aj z*2mj?u|nDjL~1?C=F=6jlR%_yC)oTXAc;U7ZSx_D^}|7)QDowGqRlfD@{~ZNkTEuI zp^%#eBDeXmHveat9Qs8-{0`JQ#DVgK1nDN@Z2qv4FjSL$lFhGGNN)|vwE6i8X(AP38^dHs4=J zl5;!N=3SJehY!^ybqVq5OANlfL-+~}zOEsBhZ%hPgz&X8___!A5+j{v^I=P+;XggZ za|P+>(~;&9wPE z)zj_*k)t@(<|PVo1S047G@GBGkgpE*MlN0bbekWbkXL~CM}A<4J~s*p^7EQmHvju_ zIr0UDgn=Ov@-zu&*!%${;b=p`;UN;*8GJ{C@cli|8?D^K&b0Zls;5r`A{YO&Y~Dv9 z&j9h;VfWztC7kMPn{T>I4u7E#Dc9B6Hs7F-at%4h=Fci*j6mc%cCO8DRmebr$faP8 z%`Z_%M}f#Aq4R8hszT~&$XuIeDdgvaJVVG^g7a-YNFnbCMBWNrVDqjDc~l_Mco*8d zu|lpFh;;sWHvjWdX@d)a_>K2q(0HCxXB&JEh4A$kJ;`aBZ}Ww!r#6}n3$Xqvq^3Zm zO&8jHj6%LWP}i<;u-C-YF0%Qas^MKm!{dStyZwI_Xsxhj5NXEdo6_TK%t`CgfGYWkLsztKx7Ve16(xgHh)1OCjs$Wx+KI9eS`!#iz{t@fs(MBA>q^z3BT;`4PNdC*C78_65bVvlzlDo ze}$|C;@9qz5ZRXt33A!H&gS1NmLs1f5E+Qq+x#_!|lZz~qE_nv9+)ePY~LG&cYdKd2h7D>w; zAP_mncjNv~A?*YrEq4#@{}i&5K%~dqi~B!?{Ls&{f^2i2%@0+`n?U>{Y7nC7Ekc6) zDuw%PZYc>%1R|sV0h@ohP>x}y*6V{de@P)H8@)CT>2+TrK`w(2A^%enb{B|@uZNNU zDZ~+owA>@e{}l4ozMd7NpFWEGPa&@eL`KJ2o3~TQJwW{SX%V970wF=_^O(&)Ss<-Y zCJ<@+$8G+MLQXVfUlI~|Jv9kW;QmKR*hL_6tWVm!Kq3F@tLwcoME08o---~vTfmoC z{hz}8tDcq!L?%(|F#q$_{0l^m{AtX;LQWQl^qFUDewRWH7l`!XXKlVzA$to%`oeQI zKT{!%w0@qqd7eW4=;LWE?el`ok5H+Uq#~Qb;GQ%^NuXQb;`wS&#ECh5XXn zvw`&OH?jXI0+IJ~U*h~rA+hg*+$_sr5IQe}$|B;-Aa=LuO)zkRT)ATYUaESB^VVll`5|?^MWP0+CDO_n3c$ zbP@;`1P3`q7Uz(^F0^B_Zavv<8sOP(dJE6Pd6A6UI>wJhQaq@2;V5t zlN{4enE&&ng$4*j9@hMf`Bz9=fyj;E7tFsxYHP@^n16+Q-`yLL^rqi1{|Z?z5NYq< zG5-pAP#|*i_yhB=kd;9E_MR3px*0-(wBw(c|2b;@4GC|DNa$v5c&8= zO^44^$j(6g)7dh_5TADShe9of@2ey{ClIM=ZHMo!klTRxW!DK==;s=IJBRR{EP9gG z+R5Q}&6d_WTp)6y>o|O=LiQGjJPzC0;b$tOkUkmh^wfH7=-Zvye_a7~B~w+IO`6dF6+QWBOJ65535P#`48WxI*P*PbP9 zH_VXGE=0m!LV^s`rVgK_Bs4H2bO@2~YTlLgLAkrsyari`qZ0zi5Cy^EoKSm)R2}DZU)#1Gq zvQBH$(&4)*WQ~UG=5SKTVu462v~u|8XGkkd7l@p(-5vgdLQc}!w08I%3OQ73vxmbk zSIAxhk>hED`Bz8-fyk9~Plx9y@A{9XnC&=>x%ki|g!mU}EDhEEX^j?>`2(Q`C;p3HrU)pE>i2t=l02V(ve zvay{va_KV%Vg42JkwB!hftY`VtP_azjDs=%3Rxo%xx*iV`B%tdfykWfP^^D5rEb#& zA}xFv)<1=uBoG;)hhzOy$e~(4gAo4;*-Ieumgoqqe+p>;#6K&4g;?>+ww^`gydLTB z{gs55fcPcs8X{qpkRaEOqa40*h8*iWfyl8AcKAmMDKTW%3RxG95)$N1+R+ZbT1n_G z5UKYNho7U6W&)AkeT>6TQOMtW`o}ud;m0cE6CnPvHVx6|0U<%o>#+{6rzETph>Yap z9RAC6X@xn4>|H}-pJed03gPP`dXiQh=I{$tPrC_3deCr(PgaPfwHe{?;}!B{8-3*0 zhs^R?@L^MukuwtUuOzGzh@6SzG5^!l{A0rAh?RUu>edk=36a*oDe{*{DJfcPa`86x2UO~P2rzml**AaZ9JhxwnX=3gLk zR!(yGy9y}~h>V;}!U zJ&Q;r$KeMkq%PAoTu0*4P(4L{ypZ#XO@`0fWE zB*?A{asRI*EZ2}C-2a!!!JjJ-X_jJ#zoU>z0+B&A+2M~WGYTa>uCOZC zh_uhy4u4%Cxj_83ZxRxF1B3)QhS?6kNJ(g`A?G-JnnG$DvM&y?&&Rv!I~UvI6a^BjJ@>Zzq6;f4?iKey0FyDEh5 zd4q3h2;a2^-xVQzr-BdGlQTHi;V&0U8)XSZK1^`F!|zteAc4qD`vQkwsgSOkvf}M9$JYhfh$*pS$QI?-er7uNr)vLq>Fy!M9hCFR|gwcldvcGHYIh`yYjDZ0<>uL3k1Fe-!eOKx9ZS#{G{% z)(J#T+Qqp4QOFvB$Y5WB`yU`sR<0PAIQ;uUIoz`}A(uLQy+S5v$YlJ>QuP)G}b$eCa2@IrAFhzk1S0#n%HjPK^1MLgP2n`_<4vk^cNDOJ}Vu*P)TSb z5V?w9BuEQi=kOmV$&t@CB>WR1 zVT_OU|3qo4Y(v7MArkrv3Gy)X ze#F0$(8iGPQiy~<8+s#`yXgZCAEG3D2*f{%nIRJH6%yo3Jm~N`O2RTj!hb^~lpB0= zL->Y>o}|}3g!O-dv{!~eq$MB5`mc}{0+C+#2-bgv{L{cc=Z|9jSIB1qkRKu6*dj^v?OV2obPleni5E(wtI=q%bmI_3w z{+z?V%awya6NrEC{X&+S6AZp{gX(&DQFnuHeh6PJp^^Ne|9Q!$jgmobj#tI425npupZA!wy0+EjRlEW`mNGE|vM||1g zrzxbKK;**s3eNu(@=INRD7=dEe}%j&5SbsohVy@gtOeqqzj`6_ce#)tQ^42p`DeDY z!Yo6=E+G<*7ZRioz2WfHO2YmEkrrO>@I?yQ(~#XGME1s={d4pt@?Rz4BZ0_X-$MSY zkaYr)Nx<94e-*MuAabnlApcd!Vu8p+?OmMzkC#@ME)Y4#@8SGkAtwRxTlnq}FXoc}5byJ@mN!1=F2EP=>~{V&dc74l^rz1KM*y{-ixyjyz4hdBRL5>^RB>hlrK zf3xIR=NYmWgvibj5~LkJcKCft!chW|dVhlRe}!}xh@7ttIR95jGl57i`4s2>3i*2{ zZwx)fCt{!B{1*rYCD-cD9e$vwklW)I@PE~It!OLz`x4_<$SQ%z8RZ!N$!h#S{4?4r zZ2UrkjNz{^ekI{3fyl9Zjqxj_yFlc8e1q{Tq?thEe0+=XE9CFmx;}M7qT~(m!7Ngr z?;PGqNq9gYa;Cn=`L{w=2t=kPKj8d3Q(9q;K;#&H#QC>E3Irk(w4ZSPt&m{?kxBi} zIR942z8dli&c7A1yFldJ{fhH%g*XC{5&Rp@zZLRTE!`rohRo382H*Q3d`rOx%Sqe+ zj{WZ>X@xTdB6aw~;cqA;&yd|dWL6Fk66B2kiO)Zjgm#96E+N|eUDMM}`tU~hzmo6? z5WlDP3QEARr1F0u|5puf5+ddC#NWvO$H@UN6o||dHzEI5NV!1dX7)ei{|Xr+5cw#? zKgj=qpko=a6ysNmiVP9LEXL=nwyi~5siPI+r3#4&L@pwBjE`2x*ERgp<;3`b3VBr^ z(w$>5-d-X13Pc*QMvT`{$TES*g`j4P|2S6KVzxkJK-G%zw-k~u5NV~_G5)YZh6+Rm z$4)VRtwMThNSzozUm-0uWak(!RtOV_v_ah%AE}TpVxA3TKlNg~KahkE*N^eN6zfA^ z^?OODpqF^L*%E_qpAfzR(Y0I|8pQb8G16ee3<-UL5)%H{FvibQ4O@<$?;R^W-h<{k!gPnQ9df4FW5#&oK)g;D$I#G`19HU`Iu%Xw%SfQevil#As zo04#_A>o1$3A<_%n#FjLl0X8Hwr(EdBNXzv?OzpkiShju@`6C*YTqKp_fW_k0+E{T z8sjw-a=9k0WsH9_T3TTi5Wkt{g^b~NAwf>mZZW=EN!VYL-73ZxDP&K9$kFW{<5Lw< zOKa0Q#>Xn;JIfolTrl>C@q-oehCrmWHZk5wArA;d=G1$}cs+%z5Qtnb+Q#@VC&+Qn z(WJGD@plzcAP~7@wTJ&JWSBsDie;`tjIUD2zM8a-F+NWry94pt_rehS{>F5^-XVN1 zfe-#H7rIU{zNhNxE`i7eymO4#Qpi$)NWa)C#=jdSt#GC$txJr*p^!X*NXzXV;}0n0 zXo1MZv1^R4P)JW8{;_ro8N*JR?0sVVBqiYo(k1i_k?;)oU0{LJ!1R`Reb`g<;?et@inS?AgZO1j2OQ}Rqy4u!@kLN_&RnU zl%Qvy___Y>8%G{-{%1$b$2v(g?g{sbpWLDx%FoFyD$AUlRaTZ;Qj}R%JSn$``cqj+ zc`oH;6_n;uPHuL7VOBwAKG+KK!G-r8TaR$4Cr!+q?r#xi%_}I*3YC)t>{(IEjEcZs z6@k4y1(WpGBMcBjO41^O4x+4r{0T+WiN@y_<>VJlpz-DT1!eg~lwDj@T1FE}ipwX% z&;%3amP{@#$STXFy-}K)Rg#}oR7M5G*;!@z#YI$_KQou66_-r%nq+##sktR(xzj1H zBx^z;rV26(CznG&XUZxm$(li>n5*nEI+aeR{irmnaB@LziTa)CGNY4H$cB)z@{-)l z9y#&1J^gPpg*e5Qk-)Oc$LGe|xCO~tSdKx89&<8PyRsRR6U?P$#ZX)8Q&su;PE;8> zD8Q#nPVVHgiJ88}s={b0sx{3MRY`fZ(Vzp&X;vu>pz+1U1(cW3lk$4>p?v%<2Td+3 zp{%mv!u)KSnw#Czy=1tTUR0P>)^mDK@he08@+vb#WyW-`GGn?|*-KRR5|zDBS&&;s za0@ENw3i?@;ZkMUS#Y8;G>-P6uGEHR(O%Snx>0-TLIVa+n*r3J1D$pnokk~7CUqG= zT?f!!1E|{oY7b}toi>2*B@11;P}i=MpGUcFP?t`F*og$mZh+@yVJ6{)#gi$oxP+!n z%r8L4CAnFXTn~mLm*-}dmceVK1A0}ipO@sqrKFo@W|fx0RVgRGG&`##hw_T3>j79| zvc^N$P&Pao?&|(3DMo|{Z-OOVpT`1{1JBP#3}qE% z=gQ*b;?jICSn^7sTV`HXwyTL79+}<@d(q@BS5swFWkRkSVS1e>dO|_*c%weY7k_A2 zR9=`F56DufpVUMsn^~AuItiA@Ldz1YkKWr%@iwo#2xCU@O)klw>PCHB6qOg{!`6ie zUoS+cWWxBYeanm7D(`J+;%zzB4Oyw)_2?6??9rz*QR}TwRFctCz!^OSmeErJ6BL3s zvRMKfpA|>lw{fwGWBh~?rDC@+u9D-rk$jW1SV3h1nm%LZG*6EAW=yhT1(gaq1nV4} zcKF1s9JrHP!V)PM$|u-@v9wZQvb3>O33ya`(ryy1#x)A<_ zU+(zT?}T26-)t?$oRTQJFh^vMUC4`9;t+yTtX=oZRu{6DGiv*!>H< zB|Rq>OOp!}7RP@f56GODTY%uEoMOtEQIv%RQFM}vz#)h($j^pQyeY=gfE@@aN2&K4 z%Z6JlDS{q(eR{dcMnTy`?35EGQXY0s$jr<4K=)cO0}-C@<|~N$Ldu&i_S6YjEhiMi z(q0i0S(2MW6SInPV2X+P6DDHUbr)@j&)=8wu{C-ZZy76f-?~cW7r6@(eifIy1+ms( zmc7jys|yyatQjs=P&{oi7WC|rVsXtZDKE$^b(eU|Utw-eet9AAT>Ljzg~d580md&l zP$61_yp<3($}OGjiY>~WMn(ArR8*Wh-J7GLVyTP!Mr8`_>QPkeUq6fBvsjl33fxTy zin<{7q7s7CN!V?@-^F=(r7#XQ|1z;!PImnZX&!W)oIf3IuJVb=B}nkF4T#@jv4Vw4 zTtQg1aKVIUm%*@;%g4KfDWxgpSiIdeueb@ZdXjvA9RE9hTZs59j*~I)(T--rqdfS6rD4vGY*9}@M z5hPL>L zIx#;F`Fn02nkL@6li+5+nG;}6%)D&vFX;kG5S(!dULh_5c~5akW+_%W%w2&y9Yv+C zaf*vFVPV9(*t2usM`C$)6Et;a;zn)!eUdvDWF5Zy4|jF*?rrp1_ufUXk@r2~W(hG~ zI38p4?wsV3pXnOTOQ17d56N_so&3CfxE+>FcfK$=<+!?wEv)N0ipblMvt$>j_v4Fm zW@r_nr+Ds-g)LJg9k4LEQTd1{$>hXH#Z?Zi<>w+5)~YgOzS3~vIySqX1=Sv;qRo#v*MSd>CNVzw0i7A6)ArbeL-B`>Lwch=- zy9*Z=xwGwh@U;AyGu_e0U7@_l(9B&5$_uhe{QVY8EcF+&i*d_l)OmL*?#_y+n40V7 zHjwzvkd>2zT|noJ*TuO+JSWD7#aRR%Qe=F^Mi3V`iKwW;G zuNxGQzqzZsdvld(6eT2XxqPi;g&XwVjhK=l@5eH;3gAns(!Eo|qF8`6uebz>qQB_f zx%mX+zQQO?#3tt^Q~tlECjF1x`G80T*B+LEWSDj#p$G@k$-oLul63almBu9=sD63FJs`pmjmu4n*5iR2q zi@3MX>-F-M&qL%PPbM;H+#h>YS=rg{-ih1~cK|s#?oyBVcauG=wYdeE?j0WzCod0n zHv!Q~trQ}!F!np#2TaDE+9R+LN}y+8^N6>QJB-|}l$=DwcnO18zv69za~FsFJ`k@o zy*dtP9$Ff&PE16+%3C@^E{rU)@gYWxYEVt8MYU-sszWlM%0*^P*Z9~ z&1n~ELAz2*+KpP#?$nz0z-h^z)Rx-etfT{V!~tDroSk&R*;`kfrF5h2)Ps6b2KA!e z)Q9@gzSIwAX#Ht_9QzzV2jXCFARSDH(4lk~9ZvZF1L#OPiU!lsG=z?!p>!-AN5g11 zji8ZqJdL6gXf&OOlbW$Ot8vd_PNpmxPuY}1I83DpG?DV@6q-Z@R7gcsOp|E};jE6z zsGO$KG@4E`XeLhbPQzK=EINbEq_gO3noZ}>xip8)qq%fGT|gJoJep4nXdx}4i)b-j zOiSnzx|A-X%jpVQN>|cVw2ZE%<+OrU(lvA~T}Ri`D!PGgq?>3p-ArrfKXeP-O1IJN zbO+r@chTK+58X@m(f#xQJxCAH!}JI}N^9vcdYqo1C+R6#M^Do;^ejC`&(jO^BE3W} z(<}5Uy+*Io8?>I@q_^m8dWYVn_vn54fc{G#(ns_$eL@@PQ~HcPr!VMB;`9}LP2bSB z^c{UqKhTf#6a7rT(696x{Z4<-pR|$wqQ7Yq{g3`3VvJeLW)6$78muO(#cH#iSRJ-A ztIO)K`m6zK$QrT6tO;w%nz80=7uJI9%38ABSSz+WYt8mxZP=cyEo;Zxvkt5y>%=;< zy;v8vH|xswVcl4F)`RtA8LSuU&HAvuY+u%o?Z^7F{n-F^06UN!#0Ij1*&*yub{IRH z;XfE-N3x^XV0JVc!j54>*|F?6HjE8tBiKlGJR8MMV58ZIYz!OA#<7!FCOesBvGFXM z<*;0q$0o3eET5giCb0rm$ck7oo6M%L5?0E}SUH=@rm^X42Aj!FWv8*z*(`PjJCmKo z&StaOIqY0Ehn>gfvh&#m>_Rq=&1VbPLbixq#1^xQ*%EdMyOdqVE@xM;rR+*}6)9%H1G|yk#8$JL*&6mAb_=_e-NtTbcd$FzUF>dl54)G$$L?nj zum{;g>|yo@dz7tZkFm$u6YNR$6kErhX3wx^*>mi9_5yp6y~JK-udr9yYxt}s^oL;v z2@K+&U_(vVPn>g`yzyzWP2{U#R=4nf>$tX;J)?fB!UBn~uS7h!t3>o~b1V?Hgl=Yi zBEO0uzlzD1nO`+Ve$^QHm3!S4*F=8R*vqe)8u?XY^LQE_YOqp|lDwHJ<)#IY#5=su!b|{%k4w>5r^y5Oc?J5o9kx z-)@a-sbOpd-Y4>_H_6SfRzWjY+v`Z>R~>!%)nlact5alt^*CxO%CDZJM1C~~`PFlj zEWf%$=2w@ojZ{&7RnwPW?NVWWH5)mgn_o>rws#gXKR3TR8+qSE=V3u2X$|kv!U^TQFS&gkG zR#U5))!f>}YGLhawX}A#T3NeWt*zf#8*5Lit<}zIZ*{ObTAi%U)?QW@Yj3L)+sEo= zb+>w0J*^C@m(|;`!UqnCQtVbwx(Dm zRw+hM*P3cgv!+`!teMuSD4lN2!u3q+EL>+>=ioXAn(lrs~ibAir3Xs zy-)sI*--IWo*v10T^^TT@WkXhSMOMy{J4-QFwsiCy6yZmN=`-cO`cRT#FGg%Fk^z; zvY!(5Y7Bln=CxCOy6c16*8T0a^UG0~%bR#F_!O_d-rv@>*)g6CUHML2wp;Hni}ns` zYkE8a_v`8sz3jGAv-ZPvkz7F>+RO5F{yh0Z}ncaP5f5Eq54;S`NycgN@YXAYj=R5jcBx9I6kde!TBnA9=R>qJ_4q%D@OO!=@OO!=sSW-r(S5ZCb;MsKcJ!FKDAthQT~Xi7qaOIn#SGu8H~xB2 zy!zo8d+~CG^pC#=;O`mTr|JjdnR@f(auWW=QTzARQ;r9lq&6_-#e}asy9k^LoS>u z<6U0Gaai%(Y;BYdjiR(-14n2TSfF~Nbo{?AN-6E5G&()1f-u?6BC0n^-NB~XOLwf( zqvO&(O1HCvMcr3{1*$hnNBryd(&15*R)H5rA}Y2(^+sv_zb;BgMp0U^gGFc+SfF~N zbj-glN=HReS_NJhiKy5D)f=S;{p+H1bQGl(J6MEPfd#5JN?nChogRI)Lwyo6CW_K3 z@WMz$#TJO7bX*lY$17|cJ=IXLuSMvVS|I(R^c-Zx)%UZtPc>vldujDe*8kg{(l1I^ z?@$?U6s7-fL#G-Co_A(Fi*Q(K(qOP`)1=24{TSZaoeQ$%9@WbT1t8Z!;w2k~A5}VEzNWUn}ilQ`% z(sT})?VwxwMd?XVltxjy9U>u}yG*|*Ju!;XC`!{gWVVBD=@+HVqbQA{bUQ>sI(M0V zQCcU8(kM#PIb^njZs`}L!=osTqI5e%LOOSueo^{&H9vb4eO{W*{u$}!S|I(R^q6Qb zjrP(gI5i8TUz84wqBM$9%}1j``bBBeC`zL!jRI4%K>9`LfGA3%DAjy4Dx_bO{!y)` zN4Yd1g%jj^_@q!S_kW-$q+(pF_PZJ;(Ud@+rBoWIBPvf)M>Gw!Gd$!}I-Sm-vuHM* zOXtz~_#OT1SQbbfrTTdOl*Nkw&$W(LZEZ(%tY5U)YsWU~Vzp8>*=TKBwv|mMcu2Mn z&n8vMrjFpt0Clw7S68p>V-0zm_@7;fw)VRk(*L{dLyQnr??4tv9i`R%KO+`s@x850 z8Aa)~ws0hW>n)IeQMzM&hhVgqZoLmi5>iXz4Du%YbvgsG42Ucs8R@Kw?7hAa#^h_tWE^YuaxZVWnSgdWRO?44A&KOEw0z&b))ZfGuV7*JMc+=g|t2RnSk4%0pWi#~(*CayztrkcfrNh~9b}Z;2d z@1rQ)Hg=7qR;2~DJW4bF6;T>JdsLO)6v^5)7DyeXRsDqEJ@~xB{dpYpCa4RW>Dy6V zq&k11D6LLwM}2LX1-5^bwq?_{W0c0wcTHB4)yAt1tLwe$!_zKwLtYpX&V`(dm%bc-0o2togQte=S1zQ&jP8VH0+F5>A1OP zyz}K5Z^3rmLzVU|p+zg!inYe84QuPY+T+@hbq2XyT~g?|Z8P4kviELGy_DwB@Bcp* zNFAkL&=>SR=tI1IrI(~>DxdMbj8@;$FYH&@vYWi$%Shq<)iVb@phX7DV7>9`%ldh* z{{70fJyUpp^;l^Tv^Wx<C008wqlC7?ncLZ5ySdW$$B{ zdR32IqF&O;0;!|)Ub>ea1i63JaU0z%m9Ko1u12f7=u>u^Z225L?!uFLLI8?NCxjX;t5sc4XqdG(AijWxVMz50MrXSs-pURv#?(X&Stc}Ik$hXqncX;nWVSW7;8lpf=c_R{p2he(TxERZ@%t9mb;oK|~j zbYEJLcSKlvSRi$jR`q@9)AIAu^ca5>rRgybkrowMp!%cq$+U{nDC4cjJ0dJSERZ@% zt2*P|Iju6@=sDi>@WV)piY$;iN~`)g-aPpnZ$(;F9~S-PTJ_mF>S;?YkUC1M`Y+cq zj?6&Um}0RmK}dY1R5u zByC$*p!%bgRcnFNQCijC^m&8)rq8M!$CgTq?n}4Sa#6eLvq0)7 zt?JXG$I|M)G>X#d^R=j_Eww=PN9k`-ly1h~mq!0j%$9ogzo}jIN9p5f6{Wc}F2(m6 z<$KdTDRk1e)%PAvqA7tsOQ|$aM^v7qE~@%BSs-Z7gP{{`O5s;&L6Opf)777Ojz zMqR8?veDYM+-vfm{jB~5*2^o4Yw|Y9YBO0D%hWW}xm--(S)p86o(z}EeV6)GSw11j z)F+v?$#tt(6J2gpN^c8nZj`3?Xf{{7Y?jNiL*tLg#RQ%k%9ZQMaJk%fsb7`l6O!~1 zWhd1(xo#C}qRWj+>1~1k-%*N)NjW_t;|*h*z_wM!o2 zo$L1OClv(ASo*0+7wR>rCw3o(h8NJz77TDY90SHU)dBK$Nt^Z&N~4PHzirZj@I4 zXvR`rm3KNeE^%x3((-68joUJMv#l(!xlx)vd+CxY*-NLf8KJwRu(`m)|0iS@nc+#9 zhW{@))ytKciYI}avo88EYm@6Xjh!n0|K@}|_0E(KmDAe-n;WIoKbpk8S9N`d%M|uF zo{hl&=5!{jK^8TlcGR9upwTpo^`)k?Cv~Jw)S338F0?mwrG2Oyb*CQGlQO6m^`<`5 zm-fZeMf=kLIso5Ye-OUA{$PA_{h@Ri9ZrMj2s)CEqQP`D4WVObC}mR-71LxquTX~P z6Q<)uz{`4EZvT}tT1%BdOPZJouSJ$+fkPr4P91kM_tw!x~$%g zy4=Qgrdm{+cA}lBF4f0QIg*a2QQls83+sm6%b^(6pqf;N>Q(8!d7QB~-c^AncT}q; z_f??DJ=2=(0M|Wfg2iY$I|bKMSqZMwSP$em zZdP+HeiyM9@TrqUlUX?{!|$oM133r33)pF_*s|z!HjBA=iO7)#;+@ED`eL?K9@G!> z?$3o{zI-SH9^ucP4uQ_W%xG&zQoKWsM9ju~Z)SGXIXTSJUig^qU4>~gCr#*kL<6IT zym(lPYd2bl>p}Dkt^?^aTu)^ed9iT~uG85ghyXW2UXu~=4Su^3vI)Q4$XHy-$atLj zBjZVw5_bxfi;N~IqWf)6_hk0p{!yJucMA2LbkMzGpQ-EVzGM2#hiUCI72CaDTHC#1 z-5cz{y0f&_z2Xe$`?U7=igo`ot#z;1-w#P^pQ%{)b9Z3f-}8JXUH7Jn?ap^#-Oo;I zpQ(7AY3=Eru6bm|K66G|+r47lPuqcYFW-T6KQxVXcjyJIf(_#5Gl}z;=h$9Um7hor zrDN$d+!@>Ss@G$pr%BTjn8B!9~%W1k*a$3gawAd;+t>bc9ZIzt1aXD?aN>0bP zoc3EKr%PN;=dF^{EiR|)R>{eT%jvOIa{9*Q^xi5t{o``_ZMK}o^7E}aSkIc`Ge<^k z@wp?Te$)`xq0|`HV}UR{Khqr7)3By9nneSU+Yudzt3|`Gdaq@#;Cd!=bDW3S9@s^4 z*t7U6XYuJ*VvTzgt6d3uh&{*VSPso(v++sT{j4Ur=NO~O{iNeW8iZ>W9f|9B8jMc? z#$s1WNEm1}^7aCEw@U0)!F|BLvJQ<~Xo$5rJBeS$@VJcQwphlfxQvloEMrS|MgLgF z#Pt}xnR>YAd?)($tZ(IRCuSqnj$ea*_u7xc+zz8mTu0DT@F)MS|0Ap1{MMj<0vtSxJ3t>H^#N?cCX_ye2j^Hd;5_tk!*v z*1b2Y_14(XraDI7wKuEpmPYFqo6)+#X0L=|4a`EH7Wr4d;HtMa>8fW_hM{kd&Cu7T zjz;VDo6*{lYwgyoul&1&tQ#QCGE)n>J>Z?vwvS*^Pn zt-EekYujkeHmh}8qjj6jXubLIAtECiebN@iM+3_B+PWvE7P(K?G@wFUo6=-l+fpg6 z{b(w#Lum%CIA_6iCb?&or)^P>F`9$6C*pZxMvK`w$UWS9-$d?lw$&iXe&FUFiTmSJ zGUir7hE3liw{h>z6McV+y~BNWTHN`z$Nl+!zB}~M-aWdwJD=x`A<^=JN@q;Njh4q% zy5&%#<&a9Z9AmT`UFnvijFuxS-BM&B2@6#==dk6fnP^%0Y}B2Vb-p}yfz^<%prv#r zT}8|2YFbV!XeC`k*Ww)HdRj#{(2aBxp6ptLcEe~ft|MqyWEk_Wvi zjj@XPGv~ z*fF4C`$}loEzqiKC0ex%v}#d_R>Awg%8g6+sP>hz;n#sZFm*0sQ}BK-wT3ElxC(PU zjIPFY1obg?&p+|E35f_uoI$#oM~qf@E#0S`M^NuT%ewgX=Pb4#<=|WK@@N80qRromN3WrhBJdl~)ySV6y*FNgUS8Jug?M&7+tW$fBD&{IWrRi`XBBCgC+>~PPq zo||rr^C}#qwV~3T9ua>@+5@?vAdo55Jwve1@nnieFRT5QqA}9fL6z)&?#Mp|(T|9rdqc*XPW=U$zX8>@^F zr3_J;@bBOX?5R@|Zn-2&@2rQ2|w zB|j-upN=Nh_cc~+oRL~M-)xH$P4|hhnK;2zyT_eLc8@x~8A`07Zq^}AFpmj6!Q9Dc zDb7h;UDR_Z_gXdLclPex{M}Y9t&KQWxgR6ij~>RgfF8xQkXob96}}U$2d$kvPc^fZ zR65Q@yM+IV(^b*u6X>T2J&o%w^enEed|E$c#bD=MX?N(c2R(){G{mRZ&G4ypOWFYh0Ny(-|W6>?Tn`<=g@gHm(HgP=t7!D^JxJs zq(#s|e3GBA`9N^%V-ru6x$|mM@Wi?z?%*C?5qB_02k=y+YI9j?muCi9gR`74;|Hep0!>GSnGqN)(U1+VH#u@8uSR& z;6qP?KLQ$joJ0eMHhA0%1Kgh_;l_P2xSL{@)r$B9vl0v8hAfd)&VVX5hyp+%^R>pyXO4 zJO2;k{1qDbXZ7dMSqXLbX1!R4gN}+k=ev-UDJO;_+kd1Z70j{ zY^rVW)ePaQYw*=c%IDzwvBK80V5U&tkeM4Ymc|BO!=!yDJGBVzHsbRz|N1-<^I`5u z$?oivaRoDhWL(2BxBecFOVVQvnX!nc4x3`cqp3Nr{!icsBEuA#x}Wa3-_zngkszLv zl+Q+@#j*4)cEK~*kGMX})c1cRRxF2Ffh&_*<0`T{@x31{ZTGv;5}#r!`E9_5ryX!@ zL-#}Gqik1<=MmNt*8;W>G46i9NJ73pzjz)a^~-d#EkEAgt{CrVyI!MC0oxlFwhOdvM9ZMW%9Z>Wga$zOBxp8}Xd$z4(0-TkW$s?r*^{-Z!p(#%$K4 ze2k$H4FDgbji5!Wre_)Vq;?@Ig=KZi)Rg`u#&satwZY$Nxbq)2^Qwi&00yE(d-@J7 z%2*rNppY%D&{qx#*dUel=ekdkrm%jC5bN7C2>NCEEOuDHVj{l8_>bJ|@ei)V_-z^j zE`Jo7TKN5QXuv{#^tb?O({M=luOOyZ)S!``mZNZ;LMP%{k(c><8yD!!k7ibgW>tu0 z2T+@Gp_xBw&2jkqp5U8Dcg09{cjsS6ZMqOX@{}){^6eNcp-bpex{NNz6CA=1gjZMW z&oM1ti$mkpudli8s{VxERUC058>+1CH&qym$?lnTJJm4kG)c2lOj|FygSQ~*?vshN zrw#TGMvwb!UTE8NHqEAUU~e(+qk5eG2 z1zn8Rud*`i0Pf$GCH5bQ{gw?+r_Kr|FQ8of9HErak?& z3S4c--AVn=%lm!#9Q546v!6qAJgdybwGG`34PW$W=*T%1v-<{6|GXk%(W(Po09#sK z1gpC(y`B4Xk-wde#-L|7x=V%V%mBK;8_gnbG#A2}#oA~@{bG+N3|$g}Uh36fj%$0m z9V2>PlkD&Jyg4D}dASZdWgGAO&0kyQo2^2~Zb!=@sR*A0GrHQR zg}=>8v}upMq6EGr_QY#F9o+Asd(GFzp@FDxPuF|sok0EL@=IJD*Uh0DJnq$A%Zl2p z@o6yz+P0xvyq2a79GnWfp6WXy*4KzfB&CYvZqdB3|o|-!Foaogs*$H)tO^R4QqBXa!p7IlLzqge}|E*6bTQkRvaZfKxR^>eh*k4;ZQ zuK{!v>Yw)MWl?rOhDDi4>N+N=J1$VC?0752?~f6io<;u_J&&uKbEp+d@sBn5EjlEL z>=)6x9gPHUsc#H6z3j<;H6Z(SuYNtQMOvT#V1^peK*%{?lOsIa{f<1p?iRfTT}*#@ z2T~i+0pPtrli^BjMD+r)-vfUO`T*C_8vlo$oXeq+F6U#fzD_`X7f=2V;P>lp(FRY) z_S!f<^JM%tAX|*{B-H!IspeurpuVZs=PyQ|HhtmAzat=@qrL@wjjKM^QJ$Q;4LKG) z9I&rN-v;XN*@-9jM?W^e=2Y8YA}G*rLC{tMA$t^+27e(s0QXw^T!GXOPAo7V$TXBT=JE9vr9{f*M`Jp#h%bP%~WXOMD)l zh!~58gGbldMvZRgk*Lx88Wm_Y8a1PQK5WsL0M9to=<7%(YV?t21zL&y%dc}bc>LcJ zVo@$?bgNE4jow#&K=O--JH7Ww;PJ00_-rCjQ;Ztj8dCy1rGXkZL0zAtDH7f(Ht_{>&j~dDIU(JbH9Lh#LRtA~F%w_)k48 zdK5K!?~kEI?|nJ;WPgTf(G%cdny)?;X!SH|bdP!#HTp{OJZkjbUku0*XBhrf;^lzk zR|BogCzvgI9XxvP>rtck{#HQFJE+k;^Sywa4+3&N4Dfs$sM!#x`7BWLMWBWUYQ7HC ze2W@=t@|D|`ds`NX!SE{bRYW_HTwR=18bdmS7K2)GyUiHK<|H|Mvu6^0yUcgt^Nt{ zu$U>wMvXqw7;1EXu8A5wc4`M&)d}#_MU8IN`hl8;sL_3_F=|MQl%}ZB46$u=ZpYP z??6r8K&yU%n*M>B0fCwW12qGU8cZJkk0-*DWkhd)cExm_3|a;H2GkS(x7>8lBOu2n zItsK1v>vppLzD@664W^c8K9p*$JHRZ6;!t-{-1Ktv!IT(h|UFV01d>4^~*t7pT=P7!N25bOz{3(8Hh)L4Sjqx4?XY zhJYr5W`nK<-4A*L^gU>&U5VO*4g!q_I_M(MYS3e#cR@dcc5V&*K?i_FfhL2_2VDcYAM^@{gRDI;|Dax=A)q|a8K7mL zdqJ;*z6RB919_lBK%+rLpmRYhK=*=P0&M_o1U1|fV*woqIvz9yG#9iCbQkCq&^Mr3 zZHe{(^#vUb$_7mb%?Dirx)<~kXandEQ2lnWBd9;`Wrx)1aW=xxv!px;3C zI}+^<$^ab=8Urc;%?4csx*PNo=mXGCpgNt1b_4YW9Rtb)6@g9%EdX5)x(oCK=rz#C zpr1hauUDu6Xb(^y&{3chKt-Tgpe3N|KzD(j2E7gX7KH!qjv9dW0Cfi)1UeRUGH5br z7H9$JYS3+<2SLw)-T{3M`W57KA!-cT6VwBA5NIgqBv2vfG|+jV#h{g-HJ}GU&w!$CtqCxEg*r+`X9r-9A|EdX5xS^>HVbO-1`(37ASL2rUS1bqqm5wsCx_rSUX zY6{vN)DhGj)DLtpXfS95XdEaHR1BI9Itz3G=wi@SpzA@mfbIpY1w9LT4fG!9Q_#1d z-$4I>YW2h%fp!J81?>&$4LSfc2y`rHG-y0%5~vJxI%p1PA?R|@O3-T1ouG$6Pk~+n zy#@LR#6drS{sK7}@L^ChP-{>pP!G_4phG}MgGPc*0!;u-2F(DS4Z0At1hfpa3Un*z zKG0*J=RmK6-UodK`VRCv2>%@u)dn>JwFI>Tbp`bS9SAxCbR6hJP&TLlR1TU2IuEo6 zbOq=d(9NK`Ko5h~fnEl^4f+`L73gQs-=J7;NdBY!6Xo zSl8oAlsgDK-uilj{|Te~q)}dExlI%DRv0)oRSkdEz@HOkkITKx_uhGx-n*qn`68oy zi73Y#Tx{U79LFy;a9NJy*s$;uFX9`Ayt1rd*3I6#1U|_qmkNGQihC(B%2SMTkql^tjSO6ry26rdx%%* z>S4VkIbmnK!$GiUAFqeKlh(uTZoOdl$$|Zo)*}v+%EA1gKJLG=-=JK?X;Qg}*QE7` z+obh~-=y`3!kIF@1*sJ^Q85N_oVgkOSc~6{v_rJ{+W~?ewwr%{+hHN zew(x&{+qNOew?%({+zTPex0-){*8M4^M2I0g7XbOPud>-?zUF~Xo1%>Q9fSCjpHLl zS#*c%-X0Q%=@6rQlu1}@8S{1yY3-07m8G7{(ew6rIgbBF@7IxKgLdGx}F$h1+-N@>MyG z8+Nv3S>Z8bo>W=kmV1Kin`c#4xNYdC$_mHdQ)ul~IgT$ea9NJyD-2wgC62ph5eM<| z`9}FE(LRn}WZ*v=xO-ZT@y7XA8vKj3GP7RrSQGhzDC6YL%NLX!W+BgU<;se9S@y$f z8@MVfoE7WsRaxPdfvd8@YZ~%ZS>Z7QH_Pl?qyM?0tl9_g0t1(2uNHQ&=V|hA0_I6l z_Q45{-rnG6mTa&3S7jxiEzsMmavYyv;IbUY_4`SN|C`$FO6kYgM5Dbd$J^%_xGcx< zQw&^|6>guepUG-Wrf=p=(s8?oaO4cDl5E(oNr}cRaQ7FG}_B@9Dl~ZWjT(| zF>qN{xMk?C$_i(=FLCEX>8HwZJX_$3fgbfZ6Z3bGz~k+g8f6o|LX*eXm0FqTP+h)d z_@63!t)RDK_^&D}oXr>V+MG*e}q zBn!KESN9^zN`I#FGu!YJRhIlXQ5O3}yxc^{kCzYj-X;2PX5jrboUu!^GERjJejF;} zCn0aB!H*9dH2g3PXKayCUZ|CE3a+(hw!v?~zOHcX>tFprFhjjU7S+1u_e`Xo{s;uNO zxgW*L`u>AYL_~jae3?+{R3S3G%%byJk_37)sO2J2xTw21pxY_hITO{2e*2i_^U%o6p9@@hlw&RW0t)Kx;+>}eu|$&`@z~gGB(@5@ol}k05A68(8N1WK+v>Pu<_onooahpx{h3BNX7Jb0%FHP<_;=E9JgH!m_4N%; zB5CcJZR*?CXunS9w@iEDVKMwD`!ieDkFm$~_O?0RI(mC+uEviiH*}mmrQyt8u9fiw zoz5S7*uaZ)oIPgXc=!T8iSd~JfQQ~R{4AsWz8a3FYBZcVraqH3e#Rcu`5E>Le}9f? zKYc&KQ!2XuTi59At(AJ2>H2vOfcg5v(^-aoxj$3zYWjsNwjgMLP8~7j%$J1p-`Cy}blTm)a zDCZbuJ^#m3dIr9qQGUfJ|E85$%v>*G#&}HpPXm8LlZU5d4Sb?eKEf#PWB9}W40#7? z{H&(w58aIR`|A8`mQg-kE8~fAqkRvp%-D2;-~Ee%gugR3&A?|F`hRZVziMS>>FX7q z*f-j5(D?Cmrh)7CD@6Y_`1di&os9PHYB*!JYh^rzY4E>k;A4#PsRsW!M!8J0pH~2f z$`A0=xxs(g|Fw6=ag~&XzsHX*87V3%DitOv8Y!;0;)*L8DJklvs8p!r!U`^{>@M!2 zvW7;6ibje>E-4u$`Xj@BWUQe-GStmTNl8h`Fi|%{LqlB+ZOeOx=W}fLligRZd;hri z51-cyW}f#vGxMEi=FBc<=A7AT`P(FKz5lnF=l;+he+=qD=A zMQ@^p?dCmwdc4Wpw1T;*@y`fXZ#n(>>csSNrhg~8l=qp${O$WCrZ+PE zzUZyZcc%~hAThm@>AOV3#Ps55>c1~hKPSar4L3KaS^T*hl2DDlljyz5yy#wn_bBt` zdh=f=%!{tot3+1`x7orw!rSQaCyYfNf7&WL;5H&e@47`^5k4*wTN^G*#-h8sBA*PG z{o>!c6Uxc>Yk1;Kn;Ja+AhWr09LtHW3e9~0AaK~X@$p;nxqTfUpWCPLVe~1VsQp8C z$4BC2ZePZS(Yv{kFMB4^_-CBM+tYLJ>PI<;!rRNS)^M3L7Ts+XdC6zyn$K;2G?p6Q zC6PDbmxsx*1M$q`0-St$*msK(?Zf4_SmAkL`YHI(ywC&byx606mFM~`+-4X{KOnSU zJLmsABTTX0Xb^v%$`-YMj?RmPYxVz>FgA~SApX_a*_sf4&Z;E-Zeu*puJNSVSI0-< zW$u`d4?E)3aL2Wqh{k3ofi)c}|#T<*JoS>Z@0;SiZ8d zmg&r2w|e=C%GGO^tf{Z8uU@jeYE3M@zWA_uW&M)6%KG?B@i|wWU%hh4IW?85E6<5T ze9`qw4*3t;Er=4;RyQzMa(?yNi&w3VuO{%46|1U3#Oj7jQOA^~Z*Dk(Y%U7*j6RWLUx$MHqW!3ZZ z79Ji?zPh@4$(rR+CoH*m*_zsafhGTv>YUZp@mT*s!}wO$uU@tGKWG{C$A8kSdiC=7 zp1Q296h4CkFh`|@x5*#J z+vTs~9rB$wgq)r7gYYi-NqDz>Io>0`3h$NQiucJM!29LT;sf$`@Im=rzX;nkBtH`0 zAU^{imS2pI$iIb;%7227$$x{7%m0E;$aj1&DS8_+oh%9(^xaR1*95 z_jsv%kB36LGWn@^xx5vxkoVzL@-e(dK8x4NGs5NKSe?8Oua{Th4e}PeQN96hlD~vE z%Rlr;=${t(VR);&5^s}#9dDN(^=MdrhkQBSDc^Q9wC|G7$Ghdjc#nJ&-Yd`iO;~=P zd@jCG-yq*9+>RC-mM_9bL^VZBB2Q}AN>ckspXr|=T_5x)=1FO^s0W%BRiSWfi4zEMf^|801Y z{KGGWcE$4Z@Wt{GyhQ#IUMf%ib69?ve1E)LUW8Z3m*Q3OCcH*|GhQnn#Ovfw;q~%a zyg|Olbl9#&c@^Fy|0don|1sVoe-v+(zl^uZcX&DEX_tQz?~s?_o$`zDE_plNEx!}* zkw1&~%HP5Jc+dCoO8=sUPg>RIfg-^+^!KdXt_>6oE-z0wxpOr6oHRRtcFTuI({@wG>N<8Tk zVZOw9sTEI_-;Srqhw)VT3wWA5>9w%FbooAbhP)8Zl%I`f$s6%(c@Lf=AH#FyvDZV+ zJo(4)e0dXIAio(eln>%X@~7}(`A0T|JkfW(Mizwk2oFYt2t^LT}P zn>Rv^D*4`cjeH4SE58=6li!2a%g6Bs`I~s7{P;IR&L(*^-Yowr-Xi}V-YS0#fRlh_=x;wd{q8xd`!L>AD0)r9r8@b&%`I?4fsa+4fvG2AD@;_;xqC?{uc6V zl2_of^2_ke@;mTYc358GyzwxeB!3Z4mVa<_m_J3n5Kont;%V~Lc)Gj|kDgHxl|;@T z;hFLgJWKu(o-I%QdsuFce1AMwUWDh#m*V;ICcHp?GhQhFHC`nDGhQsu{zu5aSbiK{ zBCosn5eYM569c&7vt^nZ{Z#CpWvPH=kPB1K78P?TV9Cw$j`=m<&Ais{6@TA zK7bF%pTGy@oA4p|uG@zG+#t`zhvg^ZBl22&RDKgaCXb$D8kKSRAMpwKF7rbBN%>Lu zMtLnhCBFurmiOQ@@(1xv^4IWLd1_L~xmi9RkDlWbmBe}Vi+Ga!OL($8dR}H!QsmKd z8KV+CBPc3~&)&6DTg`SKI-0(lKyD8CXfl6T|9^84|{@>lQ@dCCVv{!;k?c=QaXE&H<= zFPEQ-SIC?3D*12m8u{yZt$df{kh4yHGF~sQ#T(>5z#HYi#GB-=!5)UypanAIH1ouj1YEowpD9d*lb5^lS$-3qBEK6?l|PB6$=|>e_d6%f=ez9` z@@J_1A$as0xh?abf@jIUglEgYjpxXJis#CIi|5H-$Mfa8gs;hr703_9qvzjkng6qR zk^FqTSbjCWSU!N4$e+MV<(u#_d1iFOd%Tp(kH(|t_C+PJzs|#}B4B`DOTkyb~Xk--8dy$MFsFq_mK8Se}cI$WO*c<+b>j z{2F{*-h)rbAH*l+8}W_uZFdj(r{tOVwESp%Mt&Z?N#26b%5TFr%OAsI2X6iPox!7L zY(^#Vy54DzkUv?TgQv*L@KpIlc$&N&PnQqj8S-g7Q@;J4A!nBS2s~T<1w2Q7A)YJ$ zCY~q%F`h4f6fcm!j7QHd-Lju|2wy`NE0Qn5i{)kbV);dQiM$;zmEVb%$w%>W`73yZ zJmtfo|EuH&;5G7MyjFfLUMFwH>*alTgZvS^QT{gGBv1cH$lokqh_}eA@mBd)@izJQ z@OJsn@ecXZc&GeB9}PLX+os$9r%oV0^cN0 z{#eL4E6>9>%TL2&Ia{B9>hL7_wRp0;7f+Etgr~}<@HBba-XVYVEaolGhYRow`Pq1; zyb;fm--u_+2k;#EpYUAy2Qov>JozzrzPti2kY9!u$~*BQ`NMdz{6&1ReD{xsoF(!@ z@#q=XTlVv*c$s_^UM~MSULpS>UM2q(UL)UbpOCXwo`u)RkHPEZEAa+-E8Zx-9dD8k zJEhtJ4=j&G7bjnB&ehHsXC;u9f%?4YgB1MBc4`FcEA{y3f@e-%%a@0=ah znIj(mqthMc+bPvUv<j#BD1Q|nlJ7h}Gc@G<$V__+K5 zd_w*#J}ECeION|bKO3KtUxQD}d+-_ggZL)-MtoMjZEnc3S)Pf<=5KxeKN?Sxm*dIu zOYjtV2c9aw3r~}e;py_%@C}$ z0{KCBq5LGgNWL5|mfwaimT$mI79{EDNS6+(u$yek3@-}=x{v&))K7tR)U&1%YlMfI1hvoa@Bl04AR9=UV z$*;x7<-PcX{2_c&K80_TZGG?zkp}UlNN>iIr4q*TzMg$CqEm{ zmwz2EkpB=bl>Z7ZlK%-WmVe;Lkbkj!U%W(q3SKH-ftSg@hL_8KfLF+WiC4*A$7|%f z6omY>@`Ld@`DgKZ`T2N*{A#>Wz8-IqKZ`fZ-@#ktdmR<>x5|&i+vI29?edH94*4y3 zr~E#=Oa3z6E#Kkjkh4erNxWD7IlNE42Je?&j}OTI8y}Sa8XuCsg>R7W_oJCgoZ9M)@)Ll)M6;mbc%3s6F+w$cH}EcbAKop01n-eg+}CYJW0M3PnI{~De_)CRsIm3CZEF7<=dSUa%RZ0@J#tJc$T~Z&z4_? z=g2$pT=_kCo_rk7m%oV@$kP^w?JATnz>DN1c(HsXzF6Lhm&pGIFO~leFO&ZjFPHEB z*^s|N{%O2Qz67t4Uy9etZ^G;3cjNW)C-DaP8+fC9x06HuCix+Fv-}jiMZN-Wm46Ly zlm8TNm;V;;kiU+1%6B;>Mc(42~c%S^JlCa)>`Eq8qA<#_%df#xRP8gG&R4R4iyxGdyslNaOd@^kSHc{AQA@58&~kKo<%xA7i%`WYc-uY4iiCtr&9 z%bV~4`OWyC{2_cuK80_PZ+B+MIV{h@N94!gqwx|F7Xm^3?K>KUqE>PmwRiQ|0I3Y4R34 zUEYsp$REQqU(3$XO-N!)xTH;kEKQyiR^CUN7&(8{`k+jq)kH zNxof0$lol_!dv9W;H~lsyiI-?-Y)ONJLLD^o$_(KOa3O_El;Zq+tnjqfcMHv@ILuU zykGtud_evbJ}Cdt(vW9Jei*(%emXuZzW^VRUx$y%@4(08zr)Anf5j){`<@f>Ps&fh zH_E?+PszWHPs@LS&&Z$0H_5lD3VCMbd*hqsN8z!&tGHj*!**rJkHjk6X%AU`SQ=;1@d$7Litzl zBKddmV)@VT#q!_dCGxlMQu%(%LjE%Ov3R+B6<#5~39pjhjn~MZ#B1gAYC@hm`N4R- z{Iht2{CvDoz7B7aug9C^&*CleckovEUdu!NHu;fwyZk)7L*9aS%5THF%w+b$cykQ`7mB1e*v$R?|MO4 zew{oQua}qO4f0FyMtKL`B)f3~~;&yk;r=gJ%KJoycHzWjc? zKt72V%Kw2E$uk;4{$lwee6hR?FOgq_m&(77m&u3la``k~A>V#&$XO-N#%tuq;kEKA zyiR^OUN7&$8|3%mjq(Y+N&Yt8EKk2AY*&kXA>Jx4#oOeo@pgF|-XZ@H-YFl!yW}7G zQpnjYKMe1YpN{v+FTnfc*Wvy0JMaPd@9;tSU-2RNzKtRO2KlG)Vfhk#M1CngD!&OI zlm8MQm%olr$alFk3yXMy}wyimRhFOuJc7t4Q%FP6WKm&o`2O2|_xKMF6CpM{sp*WwlOb$FG0 zJzgV!7O$1>czMWKCqEIdmtTZ8$lLKo`JH%^d=zh%zk;{OQ@$E6oNzDfRdd{%xp zzFGc9JeI%p`G4M3A!m~OU_4p=Sv*C4KAtLHho{NckmXJS7eh{85 zKMBu~FUND`SK)c`Tk(AP19*Y_S-eobhbJLe2{LVR)6i60ebe8LyRp2d|U=4_+_-9o``SE8ZyI{c9nAll)M;S$-Iqwo-IGT6r#BCqEglm)GJA@@w!$c@N$se-Lk$Z^T>V zsqGj>F zDBtFWkY`A~H@-oB6h16J3m=iM#Yg4q@G<#%d|duGJ|TY-|4+h`&86fQXk0c^Y0L-y5%!=im+UPvK4SGw>F9E#4;oGTtHYz`Nu>#Czm}c%S@nd_evJ zJ|uq!AC~VmFZAcAd|!NAz8^j*KLDSS&&Oxv3-DR_LVWH)AMt3>iP1gsTay8sTa$i zr(Pm|fqI$zMd}suY3eodzfiA}zec@5{s#3X`PwF8>@pDgPoqC9l9|jCAAC|Y` zqw;n5xcvM0q`ViOlHY~T$nV2vrm55}kDhvPHy zMfj}zXgtPtCys}c@MQU^c&hv?JaIfGmQ#Ues{OfmwtNMiD_@Q0%bV~*`4xDv{A+lL z{Cd1hej{EX@5XE7ci?sMyYL4219+4CA-qNY7~Up-9`BI<8Sj$6iTB78Z}|1ew@>Ey zm#5)F@{i!d@_q49c@91llkr*kS$K^8c=x!)ljY0tRCyhqE^ojS zukXb2zl>+AeG8r|Z^iTF9eAPqyLhquR=h-h2VN%c$1CJ_<2Ca8@H+V~@CNxqc$54I zyhZ*r-X?z@?~wlq?~?x+?~%WP_sL(!2ju_2hvXmlPxNJL2Q=J@H9-CO#$K51)}AjL*ss#be}6?5{<5viwtc zs=OFamoLUM_Ead`6yy&&qS~7{ZKqvUVx{{kHypF$K#3DYhw8);n`|`GM+0h#q;H7 z;f3-_Jn_0rthWX)QTsZ)OkR&CUYCjGT!PoA{pEO_{2IJL{!P3|-hsEsZ^ql?x8NP} zJMb>~Pw*c3Al@e*#s}n2;zROR@L~D96pnxS9{9NYA-F%G>dDc{iRZUyov*wzn;k>{m&o_T%jBQLE98gZ zHS)vp#Oo>1pNaPk8q~gs_D%9r@D_O$-X^~k?~q@Ocgb(Wd*nTMpZtD&K>jE`B;SY+ z%iqFB7mFM*avs zD}NS`@w!YL|8L^S^4)d`{gW#H1fDKG63>(u6m zA^Df^Vfl6VsQfm3T;7LI%17`i`BV6e{3U!={stc7JeoNE|Ar^aQ+DI{muKPW@}u!g z`Kfre{EK+5{CqrL-hda%ufh}m9wxS{9WPP)JMc33gLsAf8N5dR23{xMEiLq0gM2>T zBtI5!k(c9b@-=vNSk1flab+GCAXnbReeC)2A#V69luxFF8)u5QaNbIvlbS6&y2MnG z9-vO%Ma~BKYkLJ~l276-@*(bHZrj46gb&>vphLcl8+LoP@F-`~X9D!eOYng$JaNx* zL_=G6CgagynDOX%`#9s#V3hI5_hCF5j58kjzKlnMNya0Oa>hOuATtbN(YA&?5};82 z-01--(_((3<+n zbIzx}Y~_XX>sGI-t6p8dmbt5ImYln~az!=4|1Srb@%f`Z-}2aw7FihmikBl2{Sm5j zZ5f>#d^G+$y2YSyuJ+GglTU;jZxY9SYJ5_(o@AP&Gu$8NHXSq;TdVaZCPd5FvgE`o z(K7!}=a0T7CR*l}$5y-=YhwMg3%8z<8BN@x91mrT6uGwMH`lGkvy#AWFMNM+!KUQtmway(J9sQNBe{(@v(oFI&RoZ+<%^! V;=YcS`(E>plK+;(j0`>h{{lat&vgI* diff --git a/src/scanner.cc b/src/scanner.cpp similarity index 90% rename from src/scanner.cc rename to src/scanner.cpp index 5987998..737b694 100644 --- a/src/scanner.cc +++ b/src/scanner.cpp @@ -1,11 +1,9 @@ - -#include +#include "tree_sitter/parser.h" #include #include #include #include #include -#include #include #include #include @@ -604,10 +602,8 @@ class Lexer { return false; } - std::stringstream ss; bool is_ascii = true; if (CodePoint start = next(); start < 0x80) { - ss.put(char(start)); } else { is_ascii = false; } @@ -617,14 +613,13 @@ class Lexer { break; } if (CodePoint code_point = next(); code_point < 0x80) { - ss.put(char(code_point)); } else { is_ascii = false; } } if (is_ascii) { - LOG("ident: '%s'", ss.str().c_str()); + LOG("ident is ascii"); } else { LOG("ident"); } @@ -668,8 +663,8 @@ class Lexer { struct Scanner { struct State { - BitQueue<1024> lt_is_tmpl; // Queue of disambiguated '<' - BitQueue<1024> gt_is_tmpl; // Queue of disambiguated '>' + BitQueue<64> lt_is_tmpl; // Queue of disambiguated '<' + BitQueue<64> gt_is_tmpl; // Queue of disambiguated '>' bool empty() const { return lt_is_tmpl.empty() && gt_is_tmpl.empty(); } }; State state; @@ -694,17 +689,19 @@ struct Scanner { // The current expression nesting depth. size_t expr_depth = 0; - // A stack of '<' tokens. + // A stack of '<' tokens. Each is a candidate for the start of a template list. // Used to pair '<' and '>' tokens at the same expression depth. struct StackEntry { size_t index; // Index of the opening '>' in lt_is_tmpl size_t expr_depth; // The value of 'expr_depth' for the opening '<' }; + // The stack of unclosed candidates for template-list starts. std::vector lt_stack; - LOG("classify_template_args() '<'"); + LOG("classify_template_args() '<' (initial)"); lt_stack.push_back(StackEntry{state.lt_is_tmpl.count(), expr_depth}); - state.lt_is_tmpl.push_back(false); // Default to less-than + // Default to less-than (or less-than-equal, or left-shift, or left-shift-equal) + state.lt_is_tmpl.push_back(false); while (!lt_stack.empty() && !lexer.match(kEOF)) { lexer.skip_whitespace(); @@ -714,16 +711,49 @@ struct Scanner { continue; } + // A template list can't contain an assignment or a compound assignment. + // There is logic below which clears the stack when reaching one of those. + // It looks for a '=' code point. But we still want to allow + // comparison operations inside expressions. So we must pre-emptively + // allow operators: == >= <= != + + // Look for a nested template-list. if (lexer.match_identifier()) { lexer.skip_whitespace(); // TODO: Skip comments if (lexer.match('<')) { - LOG("classify_template_args() '<'"); - lt_stack.push_back(StackEntry{state.lt_is_tmpl.count(), expr_depth}); - state.lt_is_tmpl.push_back(false); // Default to less-than + LOG("classify_template_args() '<' after ident"); + // Record this '<' in state.lt_is_tmpl, initially treating this as the operator + // in an expression (less-than, less-than, equal, left-shift, or left-shift-equal). + // If this '<' is recorded in lt_stack, and a corresponding '>' is found, then this + // will be transformed into a template-start token. + state.lt_is_tmpl.push_back(false); + + if (lexer.match('=')) { + // We entered the loop at "ident<=". No template arg can start with '=', + // so consider "<=" to be a single token. + // Litmus test: "alias z = a;" + } else if (lexer.match('<')) { + // We entered the loop at "ident<<". No template arg can start with '<', + // so consider "<<" to be a single token. + // Litmus test: "alias z = a;" + state.lt_is_tmpl.push_back(false); + } else { + lt_stack.push_back(StackEntry{state.lt_is_tmpl.count()-1, expr_depth}); + } } continue; } + // Each '<' must be recorded in the lt_is_tmpl queue. + // Each '>' must be recorded in the gt_is_tmpl queue. + + if (lexer.match('<')) { + // Litmus test: "alias z =a<1<()>;" + LOG("classify_template_args() '<'"); + state.lt_is_tmpl.push_back(false); + continue; + } + if (lexer.match('>')) { LOG("classify_template_args() '>'"); if (!lt_stack.empty() && lt_stack.back().expr_depth == expr_depth) { @@ -734,19 +764,30 @@ struct Scanner { } else { LOG(" non-template '>'"); state.gt_is_tmpl.push_back(false); + // Pre-emptvely allow >= as a comparison operator: + // Skip over '=', if present. + lexer.match('='); } continue; } + // Pre-emptively allow the != operator. + // As a side effect, allow unary negation operator ! + if (lexer.match('!')) { + lexer.match('='); + continue; + } + + CodePoint was = lexer.peek(); if (lexer.match_anyof({'(', '['})) { - LOG(" expr_depth++"); + LOG(" %c expr_depth++", static_cast(was)); // Entering a nested expression expr_depth++; continue; } if (lexer.match_anyof({')', ']'})) { - LOG(" expr_depth--"); + LOG(" %c expr_depth--", static_cast(was)); // Exiting a nested expression // Pop the stack until we return to the current expression // expr_depth @@ -759,10 +800,31 @@ struct Scanner { continue; } - if (lexer.match_anyof({';', '{', '=', ':'})) { - LOG(" expression terminator"); - // Expression terminating tokens. No opening template list can - // hold these tokens, so clear the stack and expression depth. + was = lexer.peek(); + if (lexer.match('=')) { + // A subtle point. The '=' we just matched might be the start of a + // syntactic token, or the end of a compound-assignment operator like += + // In either case, it's fine to proceed with the logic below. + + if (lexer.match('=')) { + // Pre-emptively allow equality == + continue; + } + // A template list can't contain an assignment, because an expression + // can't contain an assignment. + // This might be a regular assignment, or the tail end of a compound + // assignment. + LOG(" %c expression terminator", was); + expr_depth = 0; + lt_stack.clear(); + continue; + } + + was = lexer.peek(); + if (lexer.match_anyof({';', '{', ':'})) { + LOG(" %c expression terminator", was); + // Expression terminating tokens. No template list can + // hold these code points, so clear the stack and expression depth. expr_depth = 0; lt_stack.clear(); continue; @@ -834,6 +896,7 @@ struct Scanner { // TODO(dneto): should also skip comments, both line comments // and block comments. + // https://github.com/gpuweb/gpuweb/issues/3876 lexer.skip_whitespace(); if (lexer.peek() == '<') { if (state.lt_is_tmpl.empty()) { @@ -868,6 +931,11 @@ struct Scanner { return match(Token::LESS_THAN_EQUAL); } if (lexer.match('<')) { + // Consume the '<' in the lt queue. + // Litmus test: "alias z = a<1<()>;" + if (!state.lt_is_tmpl.empty()) { + state.lt_is_tmpl.pop_front(); + } if (lexer.match('=')) { return match(Token::SHIFT_LEFT_ASSIGN); } @@ -885,6 +953,10 @@ struct Scanner { return match(Token::GREATER_THAN_EQUAL); } if (lexer.match('>')) { + // Consume the '>' in the gt queue. + if (!state.gt_is_tmpl.empty()) { + state.gt_is_tmpl.pop_front(); + } if (lexer.match('=')) { return match(Token::SHIFT_RIGHT_ASSIGN); } diff --git a/src/scanner.o b/src/scanner.o deleted file mode 100644 index f944be5ece32c2a2583d0ab5d93bb7b499b70cb6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 52096 zcmc(o33yc1{r7JYKva~t;~o_?EMmeQ3=o8Yi3ErwD5yAuBtSGIF_{2TmuN(Zh*Gy| zs})tLAZ- z-SzkJm?!A(6V*(|?4iGVs@V&(xBfm!%|4hX>+cNAO#R(g&3>5u_4feGf$(+Lqqa^8 zHhkQ0@wSGxg@G-L0^91hbm@9kA2QR>7+ied0vtKP#T~_1)FC-|OK|Z)MoMZPw!K9y zHg>|f{k=8nVdLkX-yiV1?&2*@xQlh!?6F9hRQqEO{W0|!EzV#=?dC;+%~^qMU9WF+)nLQLTa3Cb zE3moi?@(>=2kSper3y^xPn*-(nDghP8Z&23S7V+vcaIg)#5SGG>Ck)mg}`5D(^0|2 z`^b;r;=s0G!`fiO%fZD%MQH7Hfa5HAK5jH8YcyGEhH5qVY=UoSYAxEneft%SwZ|k3 z`<4A2=ZeO#`s!$s;)#pwTz2uc9%&>q$d7b>)C}fFS5XG?V_#8D;DR zFLHc7sd{5Y(DxIxw1FEN@pph#hoibx?B+D;KZi7K2sZpP*g!tF1{+=oHUt`j4U^VW z<(L5}1#FsH-3&@zV$LZcv{M3G!oB5}Wb>m%lRo12hK4u9Um;OPE3-?mKG51>(+j3f zH5CQH%RZCD1shfcf7-siB)F)<@iH6h`}X>_Bm&*bjGG%@ z7srbiOjBo)(&rYO$yt)e^DObaU^0K}SIOT?=cX+(r(IV!1{dFCJlC&HZFnx&@TSS^ zrajz1sOCrt#z`Pet(|NNYR7miJDC{HF)_$r6NCKNX$+fgTk?15fWAyLYzQtI*IE+n z*Ts}aIDOMG(yfCH&-fe$aY?cy<8D1&woVH4>`1Fkvn_G84CCTHKB{@r7~TzGgr>(s=H;L`$mBRb$c_-+u)z zJ>yDD`g-ob?j^G3@t0v*K|^f|{d%leVE{aS%D4JN9*wXl#`6ISf+Ih zcknmA7maH%o)#@xC{}d%U{dq(+f(@6u$EIw_+<&vbsX42J9hhZxTDotbp#l3=7=*! zOd3%rBY_F5Vbv_DriRC-VR%!z-V6w$uFjTN3IFS@IvjLe@IVKorUmn`HnA=aED;y) z(+BCNZjeo_FEgbvw$vesOMWg4E}m2uG_K8lGhJ(YVefRoBtZJ*N{*tL?hru2@(9COleyt;gjVQIC;A`22fu*7b^V z*SF2;hh27-)i=e3FRS06Z9F!bj@84os26H1>*ZX_;(E%(EsHcOeQ1g=r*kmN6maY$ zOJ-(kghA64R%`!hy~HHtc9V7u{8keZOCf5j;aw@UOvyZ_5no!-*lSZ$uZ?)!c%HOf zt$8;xTTlB*9>-$c6j+{)*c5o|Y&TcSgAEJvrCl^Fn2doF3Bo9gZW1NfuqN2>8k$tR zHu49zm}=T5SZ}hNw6Tp`5wxtX33{pqo!ju-h^HmQyoN9H8h*%YXv<^LjR~p54XHG! z`RGeRedSwk3Mz5=?rZ(7#NnnVg7vHBky5AY6@?@!SpQc!OWHWbP2nkS3V&ma71F<( z0xO4L5Xkb}hIJ!W(Wyx9`*{tU@)}z58a|Cp?_=MYoF5UV-_4aW{y%&_w_vU$Ks~OO zZHQD?mi4NA$m++SFEm~@^|gL3Qa>GCKZp7C|9)%z)U7g+g-;7=3AXLkt^`NyEtQ(M z1p8aR^KnQC+8Sc$Cfw_&ho?U%MkwS47Wby@X+M zeYH%Gf2>)3nYe{Yz)$wq@AB`Vo;~D-xV=koStW$+R5w$ z*Xan8LhFA&uYXF$_-|z(+}P9g-?p0c8ue9C545WET#0L?s6WYxWZaJCPkrsncw}Yr z6p3`l99gn#aK~v0=*7-ECxHk*k&6B}C+sS(Q3IF+^Drdctm>h8Kb zC8h+rdOg!6jpt98F*o%x;nBm5^qNTBj6_O})F_f$U96^M6{4$YcNG%d38k4;pX~b@ zOrvue;t!Fpd*sibA>!^{%-EDYNYHh_>e{5Dw1hZ(8l-hyr9>ia2sixE<{Uj!mtERd-`ORUn)>OC9 zJ@c+&cUa!CfHVckhO#l3wKiJtf7)TeQ|bu|K4vv)2G6(!Z+Gwcw&WWot@IWCqQJ@p zjkQOc!fSZW?2Df2E}3okj;-|9!TUE}A!qIDVkLFbs& uTEOrLQhmDYp^Er1}UBm z6bpMV_X5pR55_N+B~p(587A81V`{Ib8~2uIckhPc*+0a%eu~zEoxRRfz`m*T(`k%6 zZYyAq+VF0ik_k4v*ZNm!cx+kg*L7x#YC|9ZX%f;)m?fxvv$@<)GO$|0wGGS@X~c`{ zX{@(JljJw;(M%bS)BU5V#6yOO0}l<8-m!ib$xpML!JBC&TNs#PBZ~Nw&6D*=-{5zQ z&l{PI{PRTo1V}*IWg?-Fa})o$3^t|^Bqyf?TEc8J0vlw)pG3FlOJDn9lf4QOGbP!& zm1|hycaiCd!3B-Xu)dXqu_vUJ5|=5lrq-AEov6m&O=Ra;g!JGVVRLZJmJaS7koes` z=H_adC#D0xOx(7f5O=1L6F@N1OWi>3@dR>#+Xy39?V>sM=heNQ*Cvf-T+;*uvbw|1blBFCLL^-9N%;#d<2la&B{*mUA8Heyx+l92JNHsVh* z?XIQB%(^(AkyHA&y#k}ATb2707**NcXR7PT3K>O>bvrDQ++MA!WIVJqg*4W{<@F047HItlib=iBd1-TAdE$|GNSj7osVNO zERB7!6j4)agQ-3l2;@Sx$$cGC%!nlUrwJt96PQ)8@q3dQx@jEs7q>c>$YQ@W_)j9T z%}7eYG#|2QJe*|Wml4ujQf|`mEgzXtQl?N`GMCi{Hb_5j4fZ0a`qm`G)=jsfkZOKi z$FB|Xo1v}6RB}N!-E1F5__jw!^d_ksni@`;ayol{r^;`8jh|5XX+upjzU`{8{^B+# zEL#F8&sNey>dbikIAei7zL=}8lo6F;R+f~HNu?>D`&^Hv`ZWE~DN)9vZX|%ds1uxf z*^!uYQf2zjCM3#_YL@B0L6!yBnGw^@Bo~W~kxk!`Zh%#O=S>;b?>OW48P}qzbssa= zu5nM_*8El3P>8DoQz~WFkfmWwQEUBV7!gqoN&idGRFWE&0No&rb8DYrpL7p zk5*27u@PVML5JXXZ_C!BeP*9^t7C^HXnVsVC(;m8BaK-)X|xgENN|zXYnNe>CP#7i zqLrCRorZ6gWn7n$X4KTWHw&fMhDUoeU1Ga56VvcmkkR1ms7$&vL6Sl{FZUwkHCs|5 zNj0Ud%^vU4;oJyU$OvRsL2_=|(?^WSHgvbcczRo))s$x&H+B{cX?^7bSq|FXX1lzb zWsfKA+ops}X5>OgG>Sy!_!p0>NN4smA5RQ!W?nVJDczQVBpO+z8;o5TOS_##%`Kxi zmNJCg;%zkUqGXxgJCDq<^9h1dTS2JHq(R9|J@eD_o%QB7wKv>!{lIcMCo47Rp#Go6ALkTcizivAMvq*bks%W zejeAh&CM){xT$rmY1A1+C^0k!8{QK2OgGXNW{8$lH$c`du|5|XpVDneQ|)^7d8GB} z=7O9|Obzy$)EHc|wF4zi1SVw%NLa2Da^*%L0lDjo6>g5)4OfyFBt1WM2|wa3zGm5b zZr--7TT*iy*_~Hn8^_Mw(o1YxjXI`FNS50eDN=$aXL?zX_+nEeT!6dN^ns@=U@X9_UWCMFk+@_2}o!`LR(L0 z6!oMP?OQEYO|5U6=|%!Kr~j4H9&8@pMv6=F}~t4Q5bwr(zvuqC=Bes~m(k z+6j%sO~b?Z)~jKWMRG<=oi~hYZkLU5&2Fcxr6Ama>jsmGi)A629cLjL+rE8wLq8Y4 z*n@_HR~hu0T0b(Wr&43LNvPBk|Kcra?0h3pN3xSfv6B!IWLAZ4qLxZ9S%Eg5 z;i1(>Zj{o;Wn6Wezs^H)yVN^ZONXWMY&y>)ByQhuN~djVH8;1oD5Le4C-F2iaoWsq zo!9UIS8G}WBG#`<2qgLIs5*CKmd%!1z&4wv!hq zCM~ru}hel6Afzv0A$aAu@oq}NQ=)zE5V00m8Lp`UV5d{UgW5)AH;FyU4Vw~uP zGHhtfxdt?BnEITUJ0@7@48xThusOFu1tw0MFww~_tC&+%UREOa1pfEO2!cEdieNt6 zr#y}+NCy@gL7pp-OV{7R7Fa`Ldk+2yEg*}$&y>$G1zD$rVGhiN-+=6QE>*6?6l8sH zHC&@yi+Lyf8NPw<;4;?jSHsC%8_0w+V2Uygb0IXtr|<=Q1!>%NISneH5-xz(;9tte zn4iGs@C9szZLnQQ(iN*bLvmR>fiSdJr6@bjK9Z71`WQhG}pf zRKZoy0N27&cpf@%A0`WiD*2egWGI3Qpbi$mHEcs+@y46+%!1 z7bx|Z!UDJ&u7xFVJ=_Gh!tdcW<&T(mz@OnRSO)jOgYYCYD;>Gv-UarBRM;QVp(kX) zP-QaaSujbILoI?}5|RB?og1*t*{M(JS=+}jDvhQ112kHVNQi#jpgH z!z1uGtboko0Amwo|Vux;3-%IPs2v|3_gdi;T!lCwkpn%xC7@X%A1G$yTOr=1_21dILL=HVTy7#rZ80r zVO|V%@EAM+D`B;=7IPgu2QNW0yasQ;zo7*_gRfvSd<)y)f;5*)F@+^?8zdj&vInNH z7aRZwDcvxSgzm}-m_oYJ6Eh34VK@XJ7se~oFc*TnpzslFg3sYA_!^v(9OrmAQ8@`y z$bgwpsnlWK3`^lJunZoA5_kO|kqQg|BLU^~c56;F@D9M8CN7xBZ7;M~o)`WN~n91T68 z7vw+%Tne|tQuqQ6xd(S}EG&dY@B%c$KjAgyUzl&fSCF*KaZ;co>;Zd07dRGjpaw37 zN8u~@4t`L6#QX{Nx|jNZ3>Xd5;3BvJ9)VYs7R-;}6ZitQ!cQOz#&pPmQ(+X0g=sJc z<|~(AJ_HXdk7GUoPr@o_RMuh&|AzlS3w#P+!DdLh-*Gy@p0F?M2M0qMoB-+22QuI+ zI0wq03O)em0p^uAX-DuJya+#l^F8CwR@}i`;QT;5Z~z6L!#;2Vq{9%%hM_PV#z8(zg*w;@IlMa+ zhPvb==Qdah&ETXYIY+}ua2n)8E!4s7uoRww_3#S(6aEEG2kc=vyapTK2XHzjIVVB} z6hjrvhl}89xCX9=8{sDS9oz|jhKJ!%coO~&E5YHdrGa~pewYN)U?$YT0=Np6!z1t% zIGvN6j?h`z3v&Prg29lj49A=V(_jwN!5^UozJks04LExyIR`-+WI-ML4OYX`;Oym+ zig^GW1c$((FaV~(MNkK~K_fK5^Y9Tkd*cprU=mD&YN&(Xg42bE{h$sWfkyZW9PTY0 z2X*@|nNzM^)qLP6bfGW5Qmcu$|fo~xtm9l{gpc-nGdd!EQ8CoG_KiV6N zQpR8k`A`jWlzPlZU=6H;x0QD=1!w;xXFoUqdO;mr2@930F&D#ia68-q%V0UY3mp$g za=JiQNQDC+9eP3r^o4#f0J31Hl8-4&g(7fxvadgkfzu!aMNkJ1!8&*rnv}YOlAH%& z1N?vL2xj1gOg#n zG6GXr3irT$&@P_JtuzKBjOEG{Ei3a?CB@96_Ify`T@|DAkzPfpaA3 zh0d@i>UPEK;# zz{wyT{V_)o$7sx1^xyMH7n}=Kuo{}-zu=rtc|i`0gkqQr7sGXsQ<3Cc3Qi^U4f)Cq zn0G)6ybm8LPF0fg-Bq|>$ar@R=3?>=Z4V_mU&A->1N;a-fwMfxIrd?~g^5rCGocE8 zcm(^ElnGS9MNkI|VF}y{&g)4|A)EoX!5`rc_>*!s=3n4mcmN)RC*kkPD$Hl#S?Kt$ zBxeuU3-*Bn;b1rdj)E*W1%^QmjDpe1X_)yi5$=A2z6Xu47T$(;U@L5c1K%WE=nn&7 zJmf|M)U?_}NmVA)p{1qBu6SVwalJg0)!Y24H zd=72!6F9Ae4bDdDAI2)q=Zsy@5srpq;8^IcoQNs(fWFWl20@l`3Z`(XG6qw~RmNfp z<6r`u4ilkJITKTuqMVH>OjSadLJ>@d5@jalc~B135Qe#MAzTEPD0P?(un7JDcfz0H zZnzijhra{63Fkezsd`VcGx%@GP7WNoBH2lUJ6}$AmP5-X?6;tA#dK1f(+)^+u9Ke} zEU}#|2q}NV6maHL!c|Ir2Y$nExu&-Yo>taiu7!2*EHo*pofxuUER;c&@&@KR@E&{w z{|Bw`Df}1O;Ct9_50?zg)8H?#92((y*aTn0kIKQF*~-GaFb$?d3Cx7qZ~=tja##%4!R;`WYgr*Eg9~8)L%5a!eW5>0gaW9B z8h8v|ga0Tkm>Xelu0`zwUExr;S4rdAQ!mJXQ(!bqfM$3b4&ge~;V=o#g=ugRTnY`a z1a5`punL}rm%%xl_6Yr96y(DcI3H@D4lai~;jge9o`g@}Yv|5(s6mhexsVT2pc!6; z*P#{ut8B&;zJu?f@ksh13{N8rC{&s;-+}j)k1^Zei{4x_hD%R!X~EnMJu|pI0=L5N zA?+`;6R1?em>0tz;SOknFClrEOD9ZWZ{;}56QQ?Khj|%12G2q>yag@rC2WU1?`7`~ zC&3sffI6s$N1+j#;Vt-BX~X;;dfdl89!4s8nByQHroeCDVpy&`g83Ny4OYNvcpBCy zn=rqCZ{S<_@P6hN_zeCFZSXxD^@EGU-n}cN!O74M`olPw0IBTF4~5~%A2IKMACp)k zLQAsC9QMxhVQB~EXGq$M^$B!@PS6Fq!eAHz!4JQi0_Q5rF`t2EcncmnD9L#oRzM@X1OI`HgINnhK1_l8;cw6g&%=?2uz!OL$b#PN z--bX7Y=jKJ;1PRBeO zu7+FTDOW?O~1N;t_ z!oBb{d%166+IdM%88pK4&<2|!gFV+k$cHH~q0;4a%&Xu!xE?-I+AzO_+gGyp0p}I2 zNkImThSGl$56p&Y_zheR3t$o42Y-cAU#0!P%WtyB2Ip)?7Sf$f;%F(`!p>OS4Cg$R9B>w{S`*cYNs7+`@uk zLxxmVl~xypE340*nqE^jzcdu?k#_dnvhb|5^2&;tX|)wKWiu;EOVY|J!fAfrX+zU8 zGy3*FCC&B7X*)ktotf1|vu77opIlR2d~!{3QAI^*b)Vv5r>vr+bY5C^T5)A?pY%Wb0<(9 zlSYpgG54&1DaHipDJk`&$fUret9MLMc~Y4uebuE!CH};fmsZRS&vIkuS~@w4t;a~A z>{=qUBuq?0sT>WxeYiVnA62zAvqIC0iqB7OFO^2r}N#Ot|q!6@?9;S{fc=uOY+E*VNrYYG}fdoD_9ddy#Fueq^Bb$55JGYxoa!);OzmtdKtfT1TW5?bamv~}!RUFmm@m6MYpcpUt0yP+7&CI@ zkhJtk(;10t)3W;X?~`#-X018PyrgeNpN#%}GJCkX@xdh-Cl%-e&Y1C&xEka%ipFId zbMTmfIg;j2bdu(!CLP{okIqXd0k$9pvD{1k1oln6GI``aokrk*Q?bt$okJc&h}e&d z+Mgpj$I0@?`kxWCzeseB0x5B8pK@A~xRCH~6H5*g{s@i#^r-)pu608Dchr8Sm^S?6 zb4>se{x-EQkFhU~*t2{xM{$h(SrPkewU_OpW79V&n!adPM56MD0g;!?-k>&MVYD$7}zasQq1P&$c=m{uxpG zbvv>DXeag^v@@6zu<1{}*+jt9;`G*XJdREjQx5sprCi%#amQ;q)$ftAZ%5-^%C%6# zOO#)E-cpW3#kBFI9GD^jh<|yPNRFH3kF`(!Z6y51)c%eb``<_GUswC1#oo4iPkC)t z`$X;PK$A)C(|i4wn&3_P`m24S_zTtk!(6b+zy3wLdQ!{${n8$3r6J^?Q^~M$vMV>seiRk zH137f{`?sK(d5-Dz`shd%LH=cffk;Y^4X~W2m=JPhSH}z!gC6k0H zajaDP=lLDU2j!6bbTo_>byMPXlN>S*q^un756CfH{@6H@r$+44)P8{2+qR%-5dS%9 zFH6LT{pe`?)6{;x*FO1zNceSXZ|c&cR{8pkMgQy^|^ z7|G*}11aMYwJ(gZpAfOXLhZA?_QX+*3-N!K+UI%glgC8-uT%Td7<;#oi2sk&em}3h zXFTa(7I<8z7JHjV&v@2d?GuehqtxE4bF6>Qcv7PFCwSv8GRZgn_!_OFY1qe(Cuc|U zD9@hDafDZiBaqU$($?p+RU zJ4DN1a_L$P`>dSfro*~<|x{5165YCm2a+4yBF80Drx+~lj9&-`vah^8~FZh~Gn$s>&esmmMH zKF4cMJacd%_K&H(S>M=nR7As<`;Kx;I7SHf!FR~*^&Nk`_?xe~BA@8ro*H zFZSAxxhAE)L-Lv8O41NB^>gDG5;gRbYR=);4*;5YY+5*~x>OM^!>hjcS zQuo%K8Jp0)RJ}~yTm5j(B|SN+&(k88bJ16rNs`A=@h`_L)f-ixtmCj;V-fe=j&a>t z_wo^IN&lsoa?ErM=Rd0NtKpol`Y{xYxc@}mOS#A~TJ?!qaHg%J7pwk+>ZX08UzI?= zU-f2n-%A4L_=oD-RPW)+=KVrR&j~56VCEx!?#;RA(^Ma>?t7`eRP_a_&rA!Ry}TnCPalLk(XUbWf6#D3 zs>?e?a%eQhow%3x9_5g09CFBelcHa)?#-Nxo`pNnA5;B#P4yhJc;?=|>SCnG%SFCJ-cOWpTGYL5|MEU!JYBq} zIBC96cwRx>AI5uQa@csctNxVgAG+2~F9uc#|BpOlBgaXu;Y>)N*QoxIy0`85w+VC! zF2y-ULyZ~_sr#jex|(eda+cz*Afk@-SBi67JMA#)Nz(6c|2L?9o(@ztovo^0sd^s` zaRw8vg!7o{6qh+(Q~hmi_~TTU=c2@Yqq-lU`cta=+uKpJ4{`skx+hq3+@`ubGbBe( z*Kj)14#a&Q)vfz_)w5N4zt(9d{y;p)qS?H<(*~f zRl<2e^*q&^RX^A)@*SsC^~ua*;{GDlwfP#`6vy^Lb*x5;b7HIz(bL=MEgJq}4gUmn zaW3^C@jj;dG}T{My;9p%rs@Of|Kk2Y?Rs=)bKI@^QL1b8IO&W#;(oB|L)3kd>eZ^- z`V#AuNbRX(j3?CnZR*~(tK%3)B>a0+@1tJsRQ+G7+x#YzA94SK>b5;xs`{Qsy8&cr zID3&1aeu1nX8(rWqpELBa~*2&Im2lm;@+++Z1^v#eu8#k>t1}PIKA9Je1B6Sqe!ep zihE@^Mm&RdCh?Ba@O61>+@zSNh+~{P|5Wz{>fW}Po+M1dxk&Y6)!W^w|Iruzk(8sj ze^B-D*1hW6RR2u%Ln%jb->LxzRliL23>}(sRPUAMy022bpXzt2zD0Fg&b^6G!vC}C zlhpk()&2F=pLB@(`1R6Pea9Lpj!i{We_F%o)ZNu=x%DC)5`Mbsnk?rA)yJxC+y7pi zi~CyDZ3^yIy^9V7Hox6D7x(w5dpn-|PW8jo{YXvfzH|g}KUMW&)vr>$QFYsYe^UKz z)pfb;)G+i&IG?L-)3ZVKZK@YVi->k^M|Y3N&lLAcf2?S9+Y4i@QrxRVG2(Ac1Gb}4 z)ar4gGg-wsQk+3?R7p=#0zEl_o{~WCkU;O4K<|`5XE7M(NQvxnVl7kbMb%iDe6=qh zagxHDjq#2Yc_=*2ks=Rk$2n5mtGMlKQrs&#adchm`D{`g@9Y<~OmUcO;~XgtldA9d z5A}YmXCG~I-l2!+4EB2Ha@Of$bld9no;hxgMUR)t!N$Gq<oG*lOVE!= zj<)~Ks{cMg_-`lBKS`jUzyK02odXi+3lfAgI)VE_^kY5i5Sx<k~U4J&_>%RmQze%7mfQt@EbQ(==4QC(7Bk==(GN{GV3+sp{frrqX!ja6G!W@1X;j z9l<9gaDS${KS$l$^-sO(i&Y=2@jk5jv#RH+z5)GM&$|6&)ju~nnb53P z;slqMIr#kXwX=809garwFkx9mZK+9J-0=ElYIr+!n%TFkCN!_CBvd0Q3`hEvhb_m771-SA^|~=)A!6!cal~(8RHY8KL&2kU2nO;SpGqbQ6&;(80K= zsVXWijb}L^kLFc9vTq=NP+@`j-98p|leu#@gNjP#6jcz@oJ67YuPB`t-hp*hY3cci ztq0653K!2xoR7>*;~-R2abe|*00lmP;ZO*d#4~?3~$dqWXnQSC8L&V?6Fkg6t?3 z8(jPTr6X#h1ZQS?-qZ=?k1amWP4zA%y1nQ2DYwP$t{vj1+UF+j*lFGDI0VhDtY|}_ z^2)iT)uHLUzg4m;E86i{q0r2V+EDSlc>_YB%Bq^o{-NA3A(WTa)P(rlZ6LsscaZ!u ztKPy))5?DRInqwf|I1a4E!JNnH-qdVP}XRnlA>^tjXhcenf)qC=Z4H%Px9{HFIom< z+G#IlsrYLy;C{`uVn5y!D{6XZ|(g&F-8}f6e@5k-wRx;ZR{!v{{(3xF9?@ zG^&)V0F@W!<|i8Ge!-T4{lpwP{J_ve_7CiGWq(!>?mxS7PHFDM|6M$R2`tGn2UeF# zz`W@?7o#mW?!?1g1|ME0>T4 zg+djT)w7GrLu|Rtd(G6ew5~wGnB88@o??z>KVFi4Q9t@Q#WA}qP%evwvHzdbQKFZG zqzgu7n^3sAs4QHQ`wOod#NU1f0)tp;nNiC0t~nEF82N7BiZ+>F(hTFrCoRuh5*fh2 zNlUBY8cH}M{Y<6?GnNf5;lh(#7Tbm85tmrQT-DPyYfFehDsw!`+O7HaYV&d2awF@pVacm^Ij8JHI=BXgucVKlrCP*HKQEDIy4 z2^Y;YWooZ9?m{NZ19K*tzVGV@@mHV4<+~8%*z*`@3PTh1qO7NL?Y{MtUA+AoT_`id zv&1nSh_)=toZYkt&=r7Nvok8I=N46${GzpJ{5~3BZsnS0yy>4Nt@FRMj$fl}v&`oz zs%wkGGH~b;z>ZR~3~(>>@7A$uP`i&E*tN(U&-N_tj76GRs|5m)1&gQg$C-3@|BTOG zl#$6@yX|b6+wIE_u1MABRJW6I`6V;Z&zbq%Vi{=GI-aELzVRtK?aD%IPQICP3&O;$ zH-&a#T#XFXJDmZ%&2;zWDP|nZXROez9#?~OD-qjur(i3 zbAL`Jl^g2uMp<{O(tgRuKsPEB*}za#yZJU>CUv39^-{fq;u%Zg4fnfySn~|9yLE=l z3>9#ZfV;c)B9C5?beF*1(I;Lh?Dlzv#b9L8`~O@cZc^NdX19(EgJ&1b3&|J8euXO- z{iE^x8f(JAkxnLy?cIJokt^;6p_0l(4V)Yg;vt<v-kZblB^@^*$hq(vtxz4U@%$~|)D zPb#Eh?(BTGV*1T4tH_V)J8 zLwN>m*7>0sMP*#=4e?ADpD)xi^CXI|3hm=CJF2*%0{0ou9l0^-nO!=&xavZ;i2Q9O zl6jdhPNjEAbJWH(kg}0mtdw6V(>mYitPahcSyLY30m0I0%08rz!-k3};V?Osrm+jo zbr**FlJfjHyW%7AG{LTgZa+l23$7&#B%~nRk3q-RmfeXoUaO5+efY~X+W%yWZ~N8` ztI6KUj$aFz8D`F_IiI@GMgERLE1olb7rH&`(`eG-RzA_1JB@QIt4rKy&3xCsm6$o1 zM<LWkE0%pq^c$h!@#?rG$WAHQy&*SESlm;WZt99FmQ6`keN^>rs_hEKQ8 zK0Qy*Z}#bD==q;~`V>8X%%_*>d81D+*Yj6>`dmH#w@?3#o`34o7wh@g zKK(j-uCFZFa=T6Sy?y!}svqXlA5mTYYalsnIFGxhPG6tCM)gyC`m?I@-v^n)hOe1)xt6O3`nmM;eYi(|*yDay0=>qgOP$#8=Xvx;J^DI*HO!XJ z5n2w-KK(w`-}LEgRDVZxNx#&&jdxFdQAzYCJo=Fy-J70Sd*O&f-2V-1IP!lQ%OUy- zuzK1)qPn^_zXLqFH~c^A%Ow(ySASb|TMn;lzCQ8kwjBQJ(~mgTB*Xd26TY_`j?!1s zB;F^%rvELE?oH2TkN%X$eZl^2JT{#r8gIy_+jP$G=_}R!`Kn8Lyy^U%NB5>v-ba_i z#`}?mGsmafcrW(pC+I6}m#f|`UXT7L@!0a&>d{wu^hx@jl!WuNM?X>ftLV!-`X+rr z%BDYC)AOBAx9R`Mr{AycQ+SVD4uAUP|LnE8x7|+l=-zfK|6huA@6E6LpT6<*Vcp{E zuc~hI^^&IZU7v3A^|4PM)ZGpDQ&0Hb_OP$M>L~eL54K*8^yn)*dYMP}=BxNHHy#Pc ztM}9I8~F8w3G`Hb@!jvfHi3SDz6fZ`=hW_QI=)DYpPpN^-%I%a0Gr?UJo>#J{Y>o# z;{Iii-r&)n@#z2Y=-zVZsrBa1*H;PjFEk(G{ytCmosQ>(!ynFQkNyhwHeY9WbZ`F( z@ZPo@5>7K%_n(Q#A>}CymlKXQ*NEs7^n9~V59#?9pI)iw+kE<^dTw8-w(;JnI{y`m zIjk;aEk|dc{;?~|f6HkO>pn@(<-bmm!|F%sIsf%YjGm?E{MR8d`XoI+!lz$g-Mh|B zdH$W>wmh}F7~Q+BNcXs3=W%b}?38+W)}x>3ao^<83livF_b+(d5AnEv(WC3|VAAQ; zz2SJ{)$VKDzvKx=gE!S_*TABssfCn(NBu2Ej{X+i`*!;@kG_Zg7Nbso+j`VfXQ@xO z-wSK>>GpeJEk50T&&%Hq?RUG+m++f?RUGT`E>hzt~#G?zt6SQr`zvyHTv{v zDQ?1BeEL$=_m+a;5aU7f%l(t)(dDQ8ZdVVFevHR`(4)&w``xZtKHYw|YoSlK-|brF z)9v@R*86n(y{%TCZojM5S@S2>g8hD0x=**?$;$NTlCJ|mj>#Tf!m;0_n&;E)cd2gi z>Gu0mD}1{B{?rDKo^4`u|7`K-60iOKR5$799HQB=R?Y`|bg{GFnVRg=?RTc;`E>i8 zsat%y{hrhcpKjli-{8~j`|w+Qx_$4xn|5YNqY!!T-KX34-Y0wX(YUvV-M`py?058T z@wg9K$CxWTx_t*;tT%Xc3Cn&bZi`R1-?8eZgN}{YekX3QPq*Kt8sX8UUD@&R9FHzx z+3!-7dUSDb$M-sqF7EAj--F}bkE}w3{JGRcJ+wY5g>8hLzc2QHPq*I}d&#HU?~8rr)9v@gQoF>ae`}h1 zp5fE&_r>yky8Vt-l}E30gD`)Wc=XFW`f`shWoN%5*6h>m_rltIy8T{Qs$RFTGpeGTYS3xp4Smw-Ac9Tx8L*1_UZO} zUg!99`#rCVe7gOfm(!=_!r9@X>6qba*PLa4ar?BWPncU%P9J%b&gnC~rp7TsAD)QV zl{=f(v3q~hp2?jd|6NY*LlRkar5n-A;$m)z6_-|pL!_y^)N!pPEfRJ6TQ%mUn++fP zxOZR7tvBl^-t8%CXP)+mcath|Yc)1KJGsjm>$rX5&8^8u-0kh7cfZU_aXSkx>fGGV zj0Bu0mG;itu7^uOx_7!FVJ9eY|7|RP6mhG`cW*A%51B}ObI`p_x6?%V@0i8LkSHs$ zx9(g&(pu$LA9-l5yw8qqr}xnhrZ{~nD#N9H_`kzWGB>gHoVSDfR8`CWM;X3QTYKp& z{;$6xZg=;YSzTG{oxDBc{LlS)7yBB$lpW(WN6&P5Wd1L*WoWvMh?t4|2jlp^_h;>0i4g?80{c^v=G{0#r$IQ}2_8U8O)|K9xn^=J5B z7{|ZdAKKOY->Ck*?dSTR;s3Tc@ym7lU5#JbsvO?<*Kxk9{+AoyPUH)TaxLJ7pW%O{ z`uE2F;?M9eX_doUe@&e4YWkav?^yrqe}?~e)W0|VFZ~SvAH|9Pg`eTSEsp;OZQ zO9I_S^UFQ9sX6rotGK4Do4m*2oJg7Gctw7vFLedGACvk&5Nvta>#Y*J#IKi!_~jl` zPPD&bO>yfzdUGOS{!;&$_%-?WWz5E}+o(vC{`k*L;J;YYueaF}`Y%u5|3dYDa>S?m z!yo@*_3ul*)2RNZb&m}oE%ww|$a%c_lmG8tj=>tC)SuL~zy5AQ6DR)o)AA5G`ng8r zuRr|{U?W;5UjT*b|LBNM_lM7!a}Tmfzt5uc{jPi4&LsWv^-O>IUqXu)e^}%1;|3G? z>x;(xKOFJ=|4IGttp4`Fb3FgAs(-!Rn=pQP-Xos>R`qZ1ch~^@=^upWc;%O-<(Huz zrTmTqfBDJ%gn02EJI?huK>b_8AAd=L`19k`-|=zcZ%7dTWQ||9X*T+H?Nq*39xwf~ z)c^d5PxpsE{f{O{|ExIWmmVkm{Fm%;~Fu4R_{@h!2cQQU*hy0e*YB-(!XBQ@9qE6m;LSco&@n&k2(I7ApVv(@k?Lw$NyS__*ZHC{`&Xle@`a9c=i9f`j`35d-&5Y|F>+s`ri^K z{W6yO(?3+>Pw@rZd4e0Ob#K$)KOdYR{?rFtAKva{j3ToQ& zvu3sW_c?R2)xTf2{;YmE{`cU-mwhKk{ij)nYTEQ$`S%*X-~TlAe@j>E(l!15Z^FN+ zzgTBZx|W~)fAwVimbt+Cx8*1K@y9JeZIOiy$1MlA=1`1f;P)?=&q+eNV@b6u-EvZ_ WmB0LC?;Ov6>I&E2{XR>-|NjRsG}>tZ diff --git a/src/tree_sitter/alloc.h b/src/tree_sitter/alloc.h new file mode 100644 index 0000000..1f4466d --- /dev/null +++ b/src/tree_sitter/alloc.h @@ -0,0 +1,54 @@ +#ifndef TREE_SITTER_ALLOC_H_ +#define TREE_SITTER_ALLOC_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include +#include + +// Allow clients to override allocation functions +#ifdef TREE_SITTER_REUSE_ALLOCATOR + +extern void *(*ts_current_malloc)(size_t); +extern void *(*ts_current_calloc)(size_t, size_t); +extern void *(*ts_current_realloc)(void *, size_t); +extern void (*ts_current_free)(void *); + +#ifndef ts_malloc +#define ts_malloc ts_current_malloc +#endif +#ifndef ts_calloc +#define ts_calloc ts_current_calloc +#endif +#ifndef ts_realloc +#define ts_realloc ts_current_realloc +#endif +#ifndef ts_free +#define ts_free ts_current_free +#endif + +#else + +#ifndef ts_malloc +#define ts_malloc malloc +#endif +#ifndef ts_calloc +#define ts_calloc calloc +#endif +#ifndef ts_realloc +#define ts_realloc realloc +#endif +#ifndef ts_free +#define ts_free free +#endif + +#endif + +#ifdef __cplusplus +} +#endif + +#endif // TREE_SITTER_ALLOC_H_ diff --git a/src/tree_sitter/array.h b/src/tree_sitter/array.h new file mode 100644 index 0000000..15a3b23 --- /dev/null +++ b/src/tree_sitter/array.h @@ -0,0 +1,290 @@ +#ifndef TREE_SITTER_ARRAY_H_ +#define TREE_SITTER_ARRAY_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "./alloc.h" + +#include +#include +#include +#include +#include + +#ifdef _MSC_VER +#pragma warning(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_ diff --git a/src/tree_sitter/parser.h b/src/tree_sitter/parser.h index 2b14ac1..17f0e94 100644 --- a/src/tree_sitter/parser.h +++ b/src/tree_sitter/parser.h @@ -13,9 +13,8 @@ extern "C" { #define ts_builtin_sym_end 0 #define TREE_SITTER_SERIALIZATION_BUFFER_SIZE 1024 -typedef uint16_t TSStateId; - #ifndef TREE_SITTER_API_H_ +typedef uint16_t TSStateId; typedef uint16_t TSSymbol; typedef uint16_t TSFieldId; typedef struct TSLanguage TSLanguage; @@ -87,6 +86,11 @@ typedef union { } entry; } TSParseActionEntry; +typedef struct { + int32_t start; + int32_t end; +} TSCharacterRange; + struct TSLanguage { uint32_t version; uint32_t symbol_count; @@ -126,13 +130,38 @@ struct TSLanguage { 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; \ @@ -148,6 +177,17 @@ struct TSLanguage { goto next_state; \ } +#define ADVANCE_MAP(...) \ + { \ + static const uint16_t map[] = { __VA_ARGS__ }; \ + for (uint32_t i = 0; i < sizeof(map) / sizeof(map[0]); i += 2) { \ + if (map[i] == lookahead) { \ + state = map[i + 1]; \ + goto next_state; \ + } \ + } \ + } + #define SKIP(state_value) \ { \ skip = true; \ @@ -166,7 +206,7 @@ struct TSLanguage { * Parse Table Macros */ -#define SMALL_STATE(id) id - LARGE_STATE_COUNT +#define SMALL_STATE(id) ((id) - LARGE_STATE_COUNT) #define STATE(id) id @@ -176,7 +216,7 @@ struct TSLanguage { {{ \ .shift = { \ .type = TSParseActionTypeShift, \ - .state = state_value \ + .state = (state_value) \ } \ }} @@ -184,7 +224,7 @@ struct TSLanguage { {{ \ .shift = { \ .type = TSParseActionTypeShift, \ - .state = state_value, \ + .state = (state_value), \ .repetition = true \ } \ }} @@ -197,14 +237,15 @@ struct TSLanguage { } \ }} -#define REDUCE(symbol_val, child_count_val, ...) \ - {{ \ - .reduce = { \ - .type = TSParseActionTypeReduce, \ - .symbol = symbol_val, \ - .child_count = child_count_val, \ - __VA_ARGS__ \ - }, \ +#define REDUCE(symbol_name, children, precedence, prod_id) \ + {{ \ + .reduce = { \ + .type = TSParseActionTypeReduce, \ + .symbol = symbol_name, \ + .child_count = children, \ + .dynamic_precedence = precedence, \ + .production_id = prod_id \ + }, \ }} #define RECOVER() \ diff --git a/tree-sitter-wgsl.wasm b/tree-sitter-wgsl.wasm index f648d2ebaadde6329e8ef5c98213859a8b02b89a..4be24a6dcf97d28086add9ba883dd5766d9c8c8f 100755 GIT binary patch literal 138248 zcmeF42VfLM`|xM)atUx32w)Jw5~5NBq*nnsB_JS*0xDQSfB=Dzgd~8SsHoVnyjB#f zAfiS@MMcF5Dk_SK1z$n2H&pDX-|v~(z1zFJBMD&nzkGz>%+2h~GtczdnY}%gS2o2` z{HtGU+$n_xMUxL~Z>4^Ed0I-Evf9@kZOv3*%^dBUX`5=af96bl#l&9;YIF*&naX!* zXn%ix(eyy>sG=EDlqH{2b4QIU96DVoair(w=9QJ@mzL*_&nqZYwZyM!?x-V%m3PX` z?bvlpL3vqz`M|@cbnTpzb7;q$=|)7eNQmyaxsfm(bK=AGiiGRXMF-3+%^#m%nqM?F zf8Y_rauY?)IebiqoSeL2Ib)Phl<9+r!A6@J${0I+jH7R|92K0LGexCHGW(ijI&>{4 zDkv|=D=auQzcjb7psal0q?|5e@+TA&IkF`0D3mZ{r~IOEPPkT)ymxG$n>#&!YGLb4b&NpmTAvO_-^BiOK0SjjvLsoC@1I0;kidsR2{mO=1(b}p6@Ea zVI6XFI+vePlAmKLWvEwxM5K_%<&V#sR#=`ZdCM)&n~<|ju^nT@M$4|#l)RG%PRYqR zdhqbvVV&f^siN#i!W}vnO`DQmS}>NPn?lnWSePS`D3a9JhSh0GK~W-6fxI!rrR6G3 zLbr{GH3^fMuDQ8|`DJATr=W$cN0;1TU2=!Fw^eb+krb*Er(GnSjE#pi3diS`6qnHzr{~j%a;V21`9*nS zNVZ`7z~jnFJ9H>0qdk}BPbkeR95_5TC#TEwyuxYuIm05&mrte$qU}>kZESJTbQ$l; zizD%K3QfS)5hW6hOdY7gDS4B17j%XV8J)IkaH8K2rL1);sh68uR-QL@GC7tUmHKDu zahjo-x+^X{MUNW(nYx@pG$UOMGLqPSsV11uw2?h>$=A4oQU;vd@zaXNmKPKknK)Jn z9V@3_T3RY0QStYhfB+-a;P6sy_=X#(1o`#|iPe?eTEH4)K=psJt(A zQnoTuJ~dvOZ%wtsd}%!9yx>ULY&?E_$?@1?JStvxJbpGF^CKQx#lvS3s35U@ePPQM zKU<{LdX}b4&!E9pNhD^xMvBjnfG{*EpRF&Nog+_HE*%%#7?TDYb`p zvjr_R*Io?S?q$aPai;BFZrr!lx7{mjSq*IWGsb;(Q`^1DxWCxlcCR+>$LreeHOBp* z6aIDMp4ZsE{+4my?8IMh-0K?I*EbmV9gcgGao_03`_#D4bL4$#+_N2dn~nPgC;wZF zdy5nQXXF0Gac?#5r=9YsSfb1FDW|+<8TSo)+WO5l?&}=)#m4Bzg*xSi;8jq}{vcJ%qi{g@N|HsgNPsh)+#eWBA57901iPW(#aUgA{WQsZ8gVas1; z+`l^NE;nu`_bZI^3#S=BW84d!e$4 z+^d{kewA@Q>y*#6#(ka>ey(wU=HzF-aj$jC>o((F?u>E^jr(zDlv`}vTbxm{(zu^? z+)Iu73dg<7xc_kUS#I2)JMI<6{ehFeXN>!5N8eS(z23RL+PEKa#)UP;{g`w8b>m*- z#DB}Ue{jlYy>VaX%o-bv`)Q{Swue zpC7ctuQ2Y{oE610#{Hh-US-@%oPmC|aX;%^Ut`=4IO)G`+_RkPZyEQKPW<)8z1X?F z!MGPW*EbpWMUMMZ<6h;+|I)Z`aNL`X`$k9J7UO=%asO=Ga~*kGjeCo8z2ZS#|DQYV zS;qadQ~tA!`!eVH#m4=I$LW!zUe?d@9QUgfyw8uvqvd%kgh?~Gr!8TaeX z^@Ya0$hp4QxZif#L#1(_?YNg3_eD;7TV~wfJJ**R_bli73giCHN$(lse#{yFRvGuk zI(BU!U&h@Rvz13+B6*LqU&1)QavyA&&C;i#R{i75AV&k6g zT%Tjy7dh^$jC+F<{#xVy!I3}LxLt}^cHo%pMb+sV!vy7&zr*~~I?pK}cY%=aQ9rZso?p2QaOXGgasou@TeYYcTi*di_=<~C2 z-{chMR^z_V$xg*GUH$7F_blVS%W=;(?#K=2#m4=Sqt6`U{?Tz?W!zhw=6Xz8of%nA}P zV-j+$;8@bhQZ0S*KU;jmXVp3~rSHC0whC8dP9ok#wI_w&PUFLzJtt-OR8T^v5IV~@ zDI2|7Db-DB4O^*N-4t08N#q0zaoiLIKVz$VrmrvAX+JsJPqO|jHal8kk*hYozCLmw z+3-t2Wf-egmOoreibZ>7;c7f7+cG6-Noi&ITlurP`6y6y@T+b<%2fO^x=|APQ>|`3 z6(X;GDV-Ej^M~7@4+-$8C7(k2lXNDNTDFvK%PdSOEc7FzVzeBPuEn&c$PlQ@Wh;wMPP9u`mzR`?l#P_~K)Z;SN5p*YE@D)mq6n-D*)C!$ z%a^o>KdEJ<+U+Gk0S9z@$qG<}SysjY&HSd2+o}-79B4^X3LRvnNa6U}D$DjG`xck# zD;2hyQL|x-Fj@YL*3c&0Ye2fRrM5ZgJ}PpJnw*^?H5u-e(T=?6mYRx3O1SUjY%8Nq zlPsw$GLR~zA3_?cq|!Vyf*Aw&K;4F#VC!ZmnQfLzT!QYIm6Da(m3p;sH=dNynbK7m zU3`7XNY`|Vmnh9r{e7icGuowFq97Oj83(2-ZMVtjn_Vl1kp7HbqIpIbhlF>W>C_V; zYmsf8ImrUKGU*_;H)4GzXNcFj)k3K>qg$=8HQB9R$R{lf5t3rKkCX<&jjmQkH)%p? z1GttNwlcctEM-gk)R$C7_blXP1SqYHo*{pbP~_F<(8Ne?CKBB~8Eu*%h7Qy#E9H=d z6%`egLFoo5T6R}oclp%H-<_U>9)5gjng<~wjXlL?X;SApc4uPWN$fQ-vD=&2?YsHu z5(K20i0fpCQjBJa){@Z^x>CHspopIwR#|CHO&Sz@6G>l6)6qZOr@N!cfS;~U0zJF> zve4vF$wxhRK3W=0TFTIgCK(4w^=gUDZHd_FmMNsIG=&^#3t{_HP!vn|#VE{h6IEEp z%jhKvSs6KutZ6z5?LewQH#yrwGDp9Vk(rSCBOiul48cEzjv#}Av;q1_fF7rpUcQ+W zg>I5f&`Ea@-FH&@hNTm=Pxmzmh6AQ_(yb<8x|wN(7DESpjI;pk zbVv2+IZ6f>I%2Su9^L3+ol^Qz(t2=X)Q}>oRbOU2xg?Dv*v#^oS%w*dDX4LMOEHOA z0Ud|*gTYz^Ct6N$8bPUM6>cZl#5a6^{(v6HZYEVKwL{hG=HLk@o~&BZKV|KND^iB7~?M|1Bdi|goN}4e<;gm%GC;2V(41wJhv!vPq)ct9OXpmxKi4l^!GLUqn?^#MQ&F)&O>J75jvn=>#Nb;gRxMoz z=$dgbWiC^Y9=6Q_gP~VuadbxoL1P}$Op?5V1DIAu~+t&9U0bS0HA1675O@gnd@HO5p%Z05^u|pXwiqW5r`piiC&k9+jDsarKAF1Hx{+SCsk&@y00O9K{usV% zO%D5~hi8@<1#6KTNl~v!MG6k>L#SyCe^hQ3gI{oz<&Wzj+5YefrOSv_)-THG|#JM2|C0DiwP=srX;O7YNLVtpx)srrIm-DzD=AtN`~ zO-3~?zgWQ5Y?l+iBRZykM zzSYQ)DRYG_)2HhT^?Vt7Yt_j{FoW1mg@%3QlgxY~UX*7F7p07?j35Ogi$N6(;l~2s zCu>PNwkZ^8gnHH>czshep-I6#?dp}8l6c6KnnMSXC90#H?yP%|T1G=hK!acduIXV> z>!*dcj1-9;At`x@p0QgqZeL8XQQ}$trojXOxso7YEv3h}G|@zK)2(D+FrZ{qN)-)u zH z?V^WDb{shhIb?-m&Q6o1pY(fTvYgX*t}_1n2a1Quw?EjFwj(3l%raK>ltFetPo!p` zm4=sP^_O<1Cm3l_S|WWQOWBEt;yNu;5QANfF(+v1)0!S^szp)Wj7wW(dYC#XOl_8D z?9)V7nN+L{9rlVuW>NW^!hA{tozJ;?@bmqw0Nu2i-{05QSJ!ScUpT;QLRhmD(KCVN zuCgdfMq{oH_GKy$tqerKV^3 z`!WZ}q@Qh3*K6)foiwSPrTVAOlKX(J1DlEEn?$RXMIKG)C;CYWONH=e+IHv)x%mxu zm>jM>Fg=@3W`#94Y(>^rIi=~BS)n5)+Qd+9k5 zdFhuBF(NX3jupBjUf`U&Vg$B~6Bw1{5`=CSS)ohgMQx51)g(?-ylxl7=ys_Ux;CB{kZSJ%=_#S}WgShw!8y6E&l*eyKa&imkX>K6ZGZA7YJ@jRnO>};AJ{*=8P}MK zo~1VS4W~we>ls88cLGuwj8LJA5YR%Gnhrr^nZ#0=Y%XLMK&P}(d*GJ91ZdYk{V1&7 z{nLlB0Aodu>fyJdnsMQLD>NI=O);M5S(2sjM=_q~TA}ms{2<12mK8b|&vh}L=UAax zczzP&dA1cg2hWdVJkPR1XXClM?7g69>&bQfXIYB>!ElGT0;#YV2R6)o+Tp?$wnS^T>7w*i^%wV{QE7+OpOoH`@3wB26%wV{wE7%$841#rz3wC+Q*7wojq>A`U8IL}iEm7Eru z?p3KgG%XnJgi1cMe8F~_R#|MzDhrhd!{6FfNH?GJLF%ONZvj>>W711QWpeY)sKX{h zFq}n`Eit1)WcaD%2+|Bc;~93^ct;-@X^xcG`xCoJnsCAqXMCtowjTnr^`>Nk())3w z?e815xN&ifcysP{k{m~p+|a}fc+%~NA-&XeyTZ_vAfAEH@sdDlYyw(z_&`~qh7Ux+ z0#Q)+VC|KG*MwlWl{5kQ@0;3L_2;QPnmnyLCTF7wmrz`6Ggq74{7>=P_-bq&&90--L_MgpPE61jsn@@u1owCFsp*B3q(%d%NpKeAc-bVV(8bDJbk zu?gjyP!t8~NTHO!&>5853=x&iIY5#u?-Al!BGqE$eHklnkEHS%hq#tVo>@vcH(lww zC&=6G)NA6nUz0ovnH#qBM#(bMD71SL0pG+3$V?_6Gt?-FfF#AY8!d%e-6SU?u@fUF z*y$-@SC_6cAibfqC+;)?oDYS?vVvisY!b6~5+gvAuxM2FZLHi*mdaw1u97aEa?6>; z&8*`Y5>L5pbbAKHQ*Hp=o^`}i)~0TmwRLn>k8aOe!EkfZ;~2~rmNNz4HqI0RrgpjQ z51;{ql_?2vkEz2}m8LIQn*LDAHq-LC($a@}Rp(D7 zOG}O$^-Z+20^O};vzB_5T~BLju#8i9DO7f)*)(8BO}wXP^YxK5*?r6ANI!*f!JO<5 zVlkgGsFWSzu*IHp8llC5+p#PwD^*4aYp~u`ldVj@jxQUfN66zJvLoj^g7d~;aCJ*d z&eF`un6qz306Ao95`KYpN87W^y8Zu~|MyCOex!HY)>)A)x7rEz+}^aWo0$X z-giIt-CDLfpf!7M+unIQGP?CP>i836_bqSCHuv8uEZNpO$C_oGYn^AEZ_TzYur9PN zvM#nRu`abPv*uWrTUS_DT31>Bv97kRv97hQv#z&pu;yAfS~pqqtohc>)-Bep)@|19 z)*aRYYoT?gwaB{5T5R2I-DBNrRa*C1ORW2?rPc%1gVsaVGV5XM5$jQFx%HU!xb=j! z!g|tr%6i&*#(LIz&RS`$vYxkIuwJxQTQ6BJTd!DatXHkqthLtb)*IH_dV5Uw!SZY$ zL)D7N9rL>uJ#+7YatLI$?tJt#){Ly9&3NGtf5{5u9V@hsLA!zRblMJ`@iV#meb0J_ zKe+++GxFm>if>y!l4V)#3%!fI8}>Wcnb`OfaHGDjZ4_~T!?LI~+eE(5TZC)uq(sP% z5E*!je8``AgR6TGO7v;s3iYMj39ci*>UFL(CB&Pg!|>|T_G^)3`QEhNv^ZK~Cr5S> zP$c~=DR_FnIS4VxN6z;P^66vL= z?`QZ{TA};#eL3nY`)c=Ep(Xgf67>}c_gJC(@Ldz@d$$#;#P`*xugG0&h3>`owWzO1 zxXTLN1%5K_ql1@m`lJck$tksDMofSYU+~;rnLPSNi`QCK6i$P7z84 z-)@B#5|(>*$M;KoZ?i%R@a3M#@s;Af)e7B#FSm-0?`C{&u|l`w`>yS)E8%--;HVnhhxp!Pg>J@oL)2IFxzP&E$9H4Y z_XB+ATA_LPeh~GQ26TfJx(Q#ZB@nuf4om5`$D%b$739$g};jWir$u@vXT$MN%=<_4F*K&NNDb3a=L$Ww`e80e#GoTBR zza{D`mBb;C92fl%^_7OpDUh5O{TTI?zQZw)92or+^_8a2Igp$f{T%g`)Hn!|BcorU zzM?NDL2_n9Uk}Ks%&*a_QnEAkG0|^PPl>Qe!7VKBkCs^ zIZaM={*3xbvpH3ca2T2ba-LGb-GaU=l2y)t^poX?=B%inRKW~6p*cJ1_Z5EA<$&g# zsGl^gX(De{)K8jFxg5`&8|zmlr!(h8{Un#AayY}V7T`1`e17!W`&=uLBbV7xKapD; zDh-A&i26yP6osY+!xu*VB-|8{*9@_fgW-#!m!yMF=IAASajf4YIT-O1d}1(sN%WGG z!bA~qX{_G_9y1AF7WI>EJ)Q#-cKidOakAtKgvJKLbD|-nPR54D2g8>~{UncL3L)K7|LWaxxoI0fC04Ti6ey>x77l&nPM zxF>u=^pZ4}5wZ(EH|i%@9WEknjP)BP`|meJ{iLZME%N3?{Uq*Dq2a;s{HUL3J5=_= zZ;tv&?vIqypIf4SQk+M~Hu$YkzfbWS5*iu|-xl@z8Nb6rN9q|h5E>K=-yXdtX$=Yu z35M^8`blFL7&<%{UJ&(@5$7-tRKg3RexlO=k#}d*PfE2vhbBC;73rSRb#r7p{jR8= zltsVLfM9rW)KBtrC`TLNyQ6-R?jfO^VECS>pNw7M5F6}Fu6qCf-sm;a>0sG(uZ;Rh zi|8Xe>-RL5oC~PBq19UgzeK8 zqnD&Oc9UqUqkhug8j6UQqJEOi2C}99a@0@ss4w#NMl8GcuS74&fLTv=`qxDLq!rbb zU4NFodRIRKE66Ai4IfQ%hN0#oeT0J%rkiwthz7nQ5rF}(3_ zvW|`ZYJ6$l1j&fWm-D7hA|XY*d39&Ogd&~QsAoaZSl$&W*^l~-%lG>6mPuEL!eW$& zMkviMpH^Dr@{m`_nOD6<1C1%o&ztNDV^>Ht09h|DD4JGKG{F^WdR}Qkp1jF#TFJOP zF1xQ8i3Q_b!EG75YAKTKhy-$=-}>jeHe+Ieyqho*)};bzfM3 zNohu^CcjW#LrEczv#%7F$XoPy&)q4x^1@BWyP!yGLR9+=o2tAtuc(ZMA}wwjZ`)K- z$nx4vm0LEkV0?LQX~Bev5l3PE_;SVj5LH=u>9n!bvb-I%j5j2jx9OGUPo2hl{K^!s zBh4$bn|N+sd3mYR9^|9bM$CnXO2#>%w0K&H`KVtdDSBxEW2O}pQufAy{0WY~ygQI8 z(Sc?Zmrgbk32frMtr95V$*_>!h*3BIMFOa zB!6td_=0>XG$a>E$B>pkqu|t2rKLnJOI1zG&l^X`$a@oQx2Yd_9V4wpQRzw-iz*wN zS5%Z=dLVBMRnmc!={9^8b&8ABw4yxT-xwV)R7q*UlsGTbFkE5A7BfN>PAqfB8&jYq zos5pIkhX8EXW2wvp_)6kpmgjsUiTVzjk=vym=`02VJ^SOEmgnJ(UnRm{lT<So2I#NY0zqm?rUE$@yGYV)gF{>0~lm(ySdn>1&RcZtrS* zk<$G>w}e)h&tO+xJUPEexmssY-jsaXSHE|bH@M~@a00`gy!1`G^d#YqBm+)qaiKDA zc%?hb5SU+R_i;U2@iNu15fA-Yw^ZHD&9z7a)K@1I7LUm*w1>J_AA2a(o>3ih89DM$ z!L6z7H!=TYdG9Gx7Fi$+F=>&7F@6$ed|`2(H&m?enBwBXh@g^bWz5BSV<#&;h^sND zl;@Z6y5hWXS-pE_nYZ4$JzHn-j@?`xDyvr{fSE#Me6uGGMH`n9NfnG&vEvcLqV8wK zrM-st>DkkHJ#9-pR+VQJwaRKy)FLbYXc zqL^!VYir5GQl=a|?<86qN&8oxwUPEM%V)(^P=1QMPFI?HuJ(21B$u2rEHjnpE6#jl zrfW}N-TsYWdtBBISK*dUW3bkqdWN^vQoItow3KcvE2q4o$z>&ZW2w{v2IkUn@rx}c zA$q)u%to$Wt8#f}(V07rKauAL$Ffo=&&}$Ub!d2K_|SpFN9GPZBKMGi!-v^zcm}y= z4Ve|!jE5hclao7a;PBx&N9PX9IeK9D@PVVk!v`Ko+!6izi|4>mIjXN}+ee+=TbSHG1O^jS#&PVHslIGDNOALqTrrtwZFxdqEuWj4YHQi`~ej z_+@D1Ld;T2MrSE!va8ph_WCB?SMIO$tQ5JBV9qer(ji&3bcj@Cf@&dsPebqEbih7Y z?NvKR81uTR`a6dc%55r?N?_vKJHo!*s7QTa&bo7C`kO2*#C-k;C z0$Ugk$3QOR!KpA4&V{StdbkhnhezQtn-$p4fmN4!fQ~kOvHQbWa5l`cIS>0nxEOAQ z+iezLSHcpT$FPMJ@C-a>vmX0>Q1uLbu?N6FD1_N?F{lj691gY_iai2G!HJM(laDZ|;5eI6*eAkhm<<=gB`^mnVF^3{ z%iwWXVe=IBv#<)@gts80A@v8D&=^KR1zZO6;RpB`eg|te%A*luBFu!d;Ch%3pTpPi zGpOD9tsU40IzV4I3PwXA6hR48!2Ph!W<9o$)mW*Mp#m1dBAZI=A3*J))ZQ=@ra%dl zLj~LgmGC^MCQ3DeEEo<8YywT`*N_8;!#OY??ty#Z5%>tyo=WWtL*Pgl1!q77%!WDe z2s{Q)z-RC!d=1~j5AY-WYNPfd9H_l1?|mq5*bA~C2M&WFFcgl3kv7L;3n$v-VxIvO zuoNDI_cB+IqFc*AG|3aEg9qfjX zY10^cFWAqfIkwQ!<^b#-&%sgPY-3*b09_pab(hbbw1?K0E=N;ZIPVaSy>hf^p?G(udzc-Ojjr2YnLufdim5 z^o1gr2{*!g_y%@gKsd;T*>DlO0Bhh?SZnhJ_S^6sSPPZ%LjcmC4ul{Z`a&6;4fn%$ z@Du!I^E>t*Q0GqS1KLA>7!9YxELZ}s*lfVw1RujU@GJZQvS4fpec=%32ZLcWOovl# z&cwbK?z4FS`$2dZ9)lG&Phku1!h5g*K8NpM3s`q4l?t_?F4TuckOj@5B^(ItVHBJI z1yBMXfLhGFvW|8H&%ulE8>n9xe|{w#ybbC%(t(DsJM3k%4|Yp90J=hV=mmXj`eKLS zQ0NE!;XYUkCvH`09Q6L3aRDxaD_|vThF@UnABHk)VTR2q*urTxXJ896VJkHIlX)9> zghY*k@o*!|hsWV5SP3t{EASeugLhy(P_i5)St=cxLrdrhy`VQ73`1ZjoCp>0EA-`2 z+H$DyS!yoKhc%%5mf8o}!XOw5)1U%wg!%9^tb$kIRd@qb3fG|$)&g%pQon%;SgHlI zhp|usr^4xQAzTbsz*X=cxCU;9Tj4&qA0CEBVL7N&OLgVctS^j!(J%oj;9NK#Dq#sc z0;-m!0#M7Q4t5vl2Hl~T&B53sU^GmJ3b+Y2z<00(egIY5QkjqiJ)i;}g2&+rP<0F$ z*bN~Qc85Kn3yg--p#tW@3Rnrx!zNHc!a-jc0i&T5D&TV9`w!|csDLG~0=@&4&PgIv z)V0)|Pzm>es%NP^p@mI*>>Mb8v!D{5fer8@_%kRQmZ^N z48RtKLMcqQIR|?QJPFUhJ2vaF1=YY(^`RlOh6*?jX4_ndeF=(xxKQQun}H z@GhuEmTCw6Y$~u9!7>}QJ6{lizR(|3WAY30;eGfMQunY_ZJQ8wL&$_i&=}gm!8T!R zVLmK?MX&}o+I)yDs3wLWc1P%GGZb4m0WN?WZ7Q*U2DK-B2I|0p(ATCE`!Y~_p)b^e z+7N{H(BEb>c0Npii7*K+fNO0w>`l9c%6$wf%Tm|vi`@MzRRk4q=>C?P)6P z;X+sli{L4E23`d9KDvO~XsI^P4SK^7Hgi6()ZMTGzJLv%Sn6Z=6uyA3;A_|ne}MWF z*`Pk7{$a3<`kJu|0gKXH(rUkap3OYh(=mtG(4#E}=u^E6Z473@HEewGp;V3v7 zhT9yAEsV4|9$PrkCKp@CgE279W&-vkD1=fdhZ%4RoDOH&RA65K7r_m1Gu#Td!<}#! zJPO=RsQ2$+qi=yvb$`gG`odnzd@2iWe%YrgVZ#?({~7;Zv6Wv9YRG1u{f{NK>H)bn z4`B-gQ^jz;%{eK2hRfO0dkmhic@q06cm|$@l{Oiv3|TN33ZTU1P3-mXK5T+d;8XY< zzJks03)D|Dw8tI0_#S?@X;h0_S!fFT!v4?#T0vVF3CF{=Fb`gUjqoA( zYqNHPUeE`QgrneC7z1NrJQTxOa1JcDc^vy0SP84(MR*C;*?fTgA$$zqz#leN9nytf zHhr)UfdOzB42B_al+AeTsW8pvEbMb&xy|F)&%#Q09$ti(-~;#&K8A1LSNIdGAn8Ld zn?Bh6U;rEjgJB4afMa0{jD_(~3}@Rsj{Ouo2dm%(cnQ|oe2o1Ks1Qp_=w;IfyC3w2 z!(b2$fe~;FjDfK*9*W^CI0u&7JdXVgJO``b1$YVGfH&a-_z*sZZ-9lh;!RVEH{z;Z z&e;V!4NpsW(@XN7!Sp87Muew*t~-MI=pG~7WVt_F?<8x!S~RCy)dB@^n?L$ z1Pq0daG%Zn*vnxRyaa3DZD`D1*&dJut)PodH*BGYO&{!oVJggm^Wc2A1g?SWU^zTz z(>jAPfW9ygj)9SI5{!m1Fb*cb6qpL-a5h{5m%)v2B70f6Pykb*!S3v3Ku72dN5e2E zg)&$QYvDbc4cMPSkiDpMs0Vw%oii)f7g+NiZ5thna8z z%z^8m5*~vm;AK!vX^+qu`oT~b36r4=D&TCm8SaKkco;s0?_odop}Ij|7zjgQB&>ng z;C1*EzOvbZE&K$(z>2--hj4HfGGMsP8tnD3(dHxU&G1bd_Kaa>Tf+wIKjDD(?2o{8 za6M$*K|6tBn{w|dbOBJShiP@BWChrm!638%psP-(LSdnr5w%iwW% z0-m(_0{a{I0e*xJ?_zF&FX1cL48OqMzZn$w?)4xG+CeAi3`5{Z$l%_54>;K7ChU3e zyTuw2HuwzFxpzJl=BF?}gH?z12?QV&LQoI7Lr*x^<|FKnVL$HqT0nc~0e979JqZ2l zvG#(q;apJMv-zMq^oQ|K0%cGRGvREggh${ho6Xq2fT~Y?XaSv}D;x|t&>zZdDzMLn z`(Xt<53Av2cpKVq&(;n4*u0PZIc$bsKyfeThl8LO^nrdb01kt}Fa(aZ8G}6*#zP^L zKsj{T4ZUC}jD(YHDzTr2HSjjvn`x;BU>U4{_3$3FZ^T*{hQdg=3m$?M@I36bJNIwU z9(q6L)@n?tYtc3O#LlVfTiEAqNK7481SH8MZ)s?zy_cP#6hE78{PjJ|8ZFD`1n&X6$d_ z#^v1mfO>^JDQFMKVyb1ld4;chQ zVI*w+jq4x>ZQsaYoBeNJwU1&nP}e}3x&bq&=3&-Vw_;|h1(-*uD>3J(|6ty(uE$)U z?!cU(?#EoLmSWzm_Oa;I>PXBbY60d_b*zszuO?tVs>(1|t5YzSs}mT99#JP^KCDi{ zT&8j{A5x<+A5?jmXONIkdY4`xKr;@bfobjZ^vRWO0$R>Gz^@nr^v4+MKlXhcPqNW0>>QCd}K}e3jOnj=4Z}#ayhqVcyMVjI{9= zF_)-8bFqf%gFdtUOVm_ko zvRnGyc1wT2Zs|XGTKbkqtNta@((iM%??+?Wx0B!hyFL5=R{b9G57qDA)1H5%C7+$3 zRsVb1v-ICaJ7K1}oSZIKzhW-h$urgVwdZ90_lcdF-=4JIe|LVL+^PBP^smqF(>pc4 z;eSnj|DN&6JO3W^4~@^s`tP$lwSHUuYw9;yepl|){2unN$#1gu{5<(B*r8SBQs$tl zR+ayr`S-=0TEFsa$iI6&dTFQT_sD-uev`H5zxw{@07~GWxIg-*@;h*s$!{Hio(RxPRyT+pLO{hc|XodtRsab9U~TL(O(_s>u#v3I(>U5)#=E8O`RrNSG>EE`suQNeLsC~C*}0ve|=8h-$^;ifGZ6iEq>*$Dds4?KFsr0>O)MPNyPN=ARteS@eU218B+J*zE<%X zQp=~x)u%iS;5-d8o=?}S_3ASoWb*Tx#|`QO-mQ_svoW`-+tl0Y0AGDIOP#CEQ|GG- z)P?FIb+Nic%~6-DD_DVE#q%~-^DNL`-_QF0Pqe|GsgvbZJpb}f-g*4>_1OM@q8_*X z?3#Q(^`E`3`s?d)$S#n_mb*Y6_umEbc>MoF9{=10=8jrCDYRz`*H{G0%MN6OZI>LZ0?6$Adj!?0(tDR3-rg;yFfj5-v#Qi*FT=e zJ+||CM)NkJ&CLFbW1h@;h_lG0>O|V-12ulfP|bGucedu{ZAvHnjhff=`F-L&q@Q5L0rT*9XUqfZ0oN1g_(`7?m^Yy9M53L43a^OHTTxO4Ps zY>x{e(n;fWgYw3*-7xF&YIJ#zQ!C7Q>LAS9)hNsvYCPrwbtUHAYBAO$=< zQ6qFsXEWZN!AtzjTgU2P%Uj19V9Q&_PQs3T>)44rU1{Dhmdhve*0H))^j%|(E%&>| z9G&+j-87Yr8C1#CNRnd(l=dFpx0+to{$Gt{e?3)H^owpew*yju;ytW@JLm#EV) zm-72*qH_~l=RIwm_p^0g?a_HnMCXkWowHmz9}uH+&FkMht@`h-{~IaS#cB~|rTPi; z-(CNv<_A;Hi`8+Mm1+{^-&6mM?0(jsQc6>uF@vf*W?j`2GgBRiIZyw-$L;EHJ}*$i zFlVUwn0KqEFe}w_n2Xg`-A>!s?esvqop!a`>2Oaw9U5t!M@L$0M^`)T71K@~Jr5zR zG}Rw7s0Lxy)mmk$*Z4e7{fv3L+7C@;sCJkOR1PNZE5ux^Mq%Eq2J11PkF954ThGI6 zJzM+Y$AFeTXAEe=Co=~0bLn|RLOqA0Nt!wiGpJ6$tjp*kikG~UKlCQV_bTUPN?U2QcP2mFoUWH zvo1ePAbQ@9IZrLayj{JCIYVv6T%g+OGBo9RlrG!eTF)`Ip5tsi3vE5$@#wiWqUTo; zJtw;KEKR8A$)uj9PR9(Y3e39dY|Km*#+;{)z`R|RVJ^^DXQ)|xu2i>SE>=r0?^bQJ zp5?Zl(``M^wDlBsYE_W9SgOh?0-&Z56+4b52k*Up)ahTFF`xmN4>*RDhy4Y#j%chsZhU)!%8 z4Qo1{n=$-kt>Irgk~qyI(? zYdT_g{@X|F?OPunugmc7Ss!j+J2V>pn|q2`WB;`p%BhO;_J?b&TAaZ6I6=zf7g1X3 z-#NM7+MTnc=A0q5;RNYGeyMqo8mtcI*P4$|NAi2kN2#OLFg09_;0+YVa-ziVBDo~a zO(5~69g;Xdfy7&CEHR*DZ8nj&Rq*@5E`9G{r>l$V%5PHNX6>OSsmZEP6{%uXLaEeO z4Rpyg(!UndPPOOPU^=UAsyn|h*;5_FZ&~-@%tua$8mfCSTkuW{^PY`p2`{p0>rxy< z37XQA606=@H3E9?G?U#ve#^+E^8*o`@3R^w)OlMPyKC#=h@^+MGxv{?@A~?DtR3g% z{2rA{&nF|&AGI3A=_w^^v`kd0ZXKVENO^iE=(sFS$LAx`SJqI+ROQb5gK=_SipYJj zhH~9`e>EcIl^v|Z9%1A7uRO~qNij@%=r(*kj7d=kN2<2{1pG9=~WCwMU6BkoXU+kcyZzGbv*+EG^ zL?nH`gOYxUNcw39CH)?e^xJkwN>zSVRfE-2j4sdWUw(RqXFa4w&2O1mzO=a6`%hX# z6FqawyzR_6?ipLolY+==r~=4tq0%r1soI!_t03l)DjjpEs)u+eQWtr2-9D-AvTVxv zvFUw#_;zdsuunwNUfUrlp!TPg3{FrV`+7>QSv5+ow%syYB2`vN@(WF~G2d6;WByld z!8}6+IJuO!nMM0S^;)AN-MmT7ygjWA5)V|FtYY3%m3+Q=yW4s|9Z39%$VtA!+>KxO zaIZ0Cg_)_^C0JLcDLFgqqB>)CRb4TAtL~V6R8O8OC}e#a&3$`cLoHR-tv5gZ{mFe+rmH=goW`zB-1krc{iIT+`ifk-rMTC04HNX6M7<`q z%w%_Q=a<<@o-#Y3T4m87oykeOOk4~r8Kqu2~-gdPc?`}=?))7uFThI<$s0t*uQa58hrkZW%%EXaq#)h3S zDx~VCgS)D;(Tg{@VzyJA;(FjpT86Afs$MrZ`k5TdQ|_(QH9M4Jzj_#Ly1G^|57lsf zboadrJuPE)HCl#S!lfPw7uQh26&?w5sv#j&J*msVT~D&R?H(x~t#Lh>w*EXdvW5!T;^A!Tw+%Y&Ewjcdr!4GD~1O46RP_% zPG>UX$v0x!VIHh*qi6Wk)yThBuVn90kL$kj1m?}^Nz4W6E6g>jseXpG8|Eu&f8v<6 zu}`0rL|egA+%r6`R;VXcL%(0mS8u6zd3M*7uUWrehP0iza$o2v-#cntz8&Jq*S%j~ zo$__p_hOGei>jfITSBEr!aX&Vu+$@ANi`%m^pYneb3aX{POkougx4;%V`-c z)QiYkspPv;+jH-oV(;hd$R3WPkICEG9m<=#oZWkh)h%ateE07A_QZFe18h%x_lZPx z1Iz7k<#hn-Tvj8>Cicr!?KX?IJ@usUa4Vx$${AubD!^4U;k+QHzKFHYq|IJp6Mjo zoA#?W;`CozL;W|##ects@!yM!|85QAn?3(%Db#GA-><%kOaF@+r5`&+T)l(i-M4YN ze6s_(9J+(L{1B(h_chYRubPs+yI<_#tI7F`U;Q4J{%Db5gKnYPGG4x^%#P|xW2XED;dDSvEPxh zY6qp5GsPE>GEw!Srrb|2-ext>XTh=i`>i5-`*O}E&nZ?_E~{%)E-&jG?Yo_I?39an z`ea8-ca7F%uN~CINZC5XssLaG+Oa92l#^czw#IpOQ5I_Z5h=QQ~p z($7?bY2)s5;QOrlF>Ty?k}NIUo&Nd+>Hl{d>AT~)Pyd~KJ5K~BI+b+C-H;&N54M@E zdAcK7a@Bv5BcOlTFH;?+OX~qo%ek)_&s6!b;zo1qetx8S zKvW&OP(J4qE(l%K0Xi8)A>~8mU5Ps^1MgN$||Hd zW4$~{H&My=TVu!i=<~#x_VfA9a{|s_z?9hGy!?XK0Uv^LR}y0RLz`kqJkcdIpaHl_c`6WP(!_F!M$nXO}Isc0?w)i0j( zeyUb_Z+qgct46$9>Q_oQL;a4~M9Hr;j8Z<<=*K7cE!gNU!2ay3ZGSIFz6T`Fo*%4KF=RkLkGWpJDGdTex+J-I!`F0DR05S%uuy4cT@7aA-k(|%*IOg_4ZJ*L(_zF zH;Z4w&BWYO$vg1(Qu0e`d+YPNebioj=672#n<@Dz`KWk*Ths4afF{dP!PUv`0QkoUW=h@$2h5uy*?UNbXTm`lH#W zNIW;BsHv3n{i=iC$I7g`t2EmA>m|8oa=r!S=L|KzT~u%Vu~F+C?LqHXt6lijx1RLA zsYW@=oo>9Izf~*VSDtuZR3lzMzcnf|=J~8>UOQ2)Qz-TN`dO^LDy$AshpK)mNA*_& z)M08Mb>Q8VtzJ9y?#5Oxp7+@bXMW%I+TVNEUcL0ZI}g>1=iTwBUOewkOZDP;cZ;eQ z&%5JQy?EZ8w(7<6?(kJF-VdJk{e3msx9rx$_ouz8H3xdvgVkwg&T7y-&fUrg;vVN@ z6}7E#&aXCl^7?+Y^7=;HShcpAW7RKl@qVgSJZE*|&a3PMx$`P(y=~{!+it5~SIG(` z_6|$dC((2gug2;!o678Ep06>_pUL~n8zp$k#ynqRo+~(&Ft4)0Fi+GBXZDe2XQHEI z^vN2(^0w}(^^*FI&5hJ{Rk=yD0;oJa1H0$&Ige$vICQY|kB|cP6Pi zM~O~4suRmQ>Qx=f854R?8uisdnC;YxxPJ1Ym7d_v%2_=nI+v(A-9*o?MpysI?wu0d zLslo2cO6h24ZX8+)v=s$$6cN>TE~t%+b&P{Z3jt%v!xy+e@b^rWhL2S3k=$EQ>E9)dY#sbIuUe997X zjj*y0fR8<`3`uSBKPn=#=#0jW@y7fJ#TVJAYqRCj{Zh_H#QTZJO z=lt+pM!%|dM!c<|s(T^tS=+W_I3wR_NoTpBXH{uV+Y|NQZKox9cXB_(pBmY3lO49f z{@QWrnDb8W+1<9&aCRAwq>eJxf2pI`T}G)JXM~9Ewwv+6%=gJkVzn<>Nw{nE{VHqK z=@UmK=o6v1GH~9+BqzV#(PY~t;nr$cHFn{=qe%7TSG~*U)@DRC_FBF3$+oo#sAF}F zf2wOd(N1m9?vw9CskJ&0^Dvc*IgtHKOFiLg-N*au=)N7lzDsmx zw5>VI-DC1RJ*HM%Ymqa+vFKA@XojklV zf?kqj1YPZ`6IV}iryxDrJGyVH44k#kWJ-FX`d-gI(ed;)%W2>4H*L7bwPgCONTQ!} zkL<4BP+a}4Oj5tG?Ql;WE72WT;`;KA`P(WNzx{2KXj!!PZ9BYoq}z6Q*%@%3>pjH1 zQFIoGFK_1@-d%17#g*HmNy;tJ8DjDoD}|MAvePW-cg{0_4I*#yOSB7=Tz;avl;ok^ zBm9&qR?|~y!%bY{WwAe`PhvB8Uz7VRb`&SLiS8SdYmsPIE_rBYwNQpWnYtatt`?*e zV|Rkh=vA}%CD9qW(_6i>k@qeyx&DdI`jX53%rh5!5*atVnj|_yNG^LuT%AtaW}PNF zYfLUX(bEgbL!TC>$tl~^#JhjEt@8HX2PO~gJiYdZUX#pZz1NUuhoj@v8U93X%}jjW zlsvcIouA|y`BkDbuw=5`J^C=l)NSoqdG~3yrG({6HB;42U81K5lIQSMPYz$%Mh+7_<&#|Y8y?wf zw;|iRLy^2Z5}i{xdc@DqiPqrB!a8f9bE(Pt>U_+0>X^8>d?j!0bym~SeamPszliV3 zo1T9`lKvhIds!sxB?-f(@D`I~Gk&7`XJ;+q)_+)>{*NZm-#Kq`#~U6O@5Kc165UHB zy92n=Gag=^B+usijlF3-XY#9{(bD>lzm_^dov2PyxoWh^Q)ARvp2xn1TC(_FMttb& z5`^}v8$DXwkWdR5Ib&CW-|ID8qSe989+~r!$h_SX^426F@AQORkR;^Yo{)DX44IjrKo?uC_a!K)6m`E2-P05LfrOzS(xD&mgnl?-=tp(vb)GtVEJ0|$deW1_Clcn6 zp6&_xbi$A+YNgg-xkumU6Ke31NA8OWttH&q2IoT664HAYo-FkN9+^2wWDcg6xc31E63+Zm zi+dN)eYZP;la)j}o6au$xwO#4PwS)-&pf$d_VA93OM6JdwEgO+xNx8F{Z6lrel;R4 z+^{6_M#hCZHc7bXea>Kiiq>89K0YP(+|-$yPNdA^=cY6}$L7~u9x$&)d9mQq&a6_8?V^Y4Ty-?J+q;eiOm{J-Vt&WVJ80M7-z8 z-qhv!h}ikI7vKJk-|cYcb%Z~0UdwbYqHTJrM}K}bJ}!@m!kj`F_qWkzB#?6&VY;~X z2@-`lgD~b-Lri&k!=x$meD_R3W~x&uhkMnxnD;38hT|FPEP7n$m~_(Yr^8J=^WH^y z&gdQ$;_mVc)s`BIkKs+jNSE(^-IE{<+C$PgI66wCs&mk~r8*aLh&mth2vxw7F00gL zwHW((^@6K>Qe(nhpkpQv?XGQaD@;^sCPy=qpG_jT~kzX()>I9IuMhe z@k#R?8!kU-xD<6IS~XB5)cd!ta+9+n+0k#sxqC~lS@w6JuF&mc0p?js-br+eD^7~~ zkCrtBf48h_QXE++>biuf&5eX`*T79F0a}&(u9>{;+I?ldzS4kad|Sp{nVXWLM-GV- zJHAY&O-t{N_S1mf3rf*FVOx?)DxL|4q% zJT-wdGqQWHq^Ko2UrR9?sawePcP`CS)Pwk2Y8j?aeZtjEF<0HWexIxET&Ji9ve7%-=93{3f=BkN1SI0Vns~^T(eO$|2f!RP^N|-G%SD)7Y&tkSzH*wWn zQ|^|wlD^tf|CV5idS1tQ5wnrHfjD2eB>L4W__tCoQLa9EX|zwJs8@BowU`BJ9`QbR zU3I7R25HGIbR({>BXoWBHqwmSdD_k${@sXfZr}GJzD~`&kE}#Bvk`wv4YQGY1idbE z>6M~BGO;ils6||jZRzsH*+%L!eRW}6S)`~hblk7>)w{VGTlVf2@ibR&iAi@9J}uQZ zI&KA@-8Dm5l5TU&Bp_I%b|K0mq2XEYKTsb93Td-xpNu7AVd zQvbn!Chvo>RE0}Vx5Q4YL+c}_9i<$t_hAv=6njoFJzw665SwFnc|72``n%SS9}yx2 zZ%O;`Z=eF01uDKgQk1FrG#$n}TABV+o2xz*-}l@(2?nBlz=TfM61}~up7w8m*+|8g zr%x@`t+}PEjQnahoq8iocb}ov2fQu6aRR?4_{GFn|ItFBsRcaO}T3BvXwl%?K9-%DL`{r1=% z-?IGnd=WoW_*5UQue&~csxN-=^?Qg8=gxy)_0u}6MTgljI`qfCfjSH`HvAxbeClw_ zK{4Tvz$a75Q$*Lr_z%UufjSy9R?cwke@vXePaUVr$-VyasZj~^K0(JnDK5TWjn@8S zJpSXf|M)n6pPHCJ_9Pv)FfOcL6>0yHIDeliMMivCmwWQzSJQR;lRfcIC2V}ZJ6*?j zml-?G9zVaTK$=gTjp=T~el-i97W#?l8)E9?Jp3D|*_dwGer4)U(GFtk@52Ar-kkv2 zRQ-+rUwiF)uXzqhGG$1K2+4GlIm4|Ck$F}!M~U1>nWr+(l&R81hJ+BJBBcyvEcuqo zOojA&ue0~s=d5*Zr5-&`|NqzFb=Ur^wf5T6neOMDyEi@gJ(1&j%ot|`^-_%DXXJ9F zSQmO7k34=n2Qn(>BVi2lx#5+lzEVWL|8~U~mXcYF#5;e}es6Gp*xy@MCB5H~oHLp|C z$*5UOjk(TAQR6I)>hl&g<{GY`#@y0XQ8lZnDQ7Hw4K+qL*2o<3$ma(s)<^Z( z7*(?=s%A@6&DN-z529*5imKTWRkJgy=2L3S{rnj<=CRmKjk(A6Mve1DRGv6xYv#9lR%BR^oOW1mtKa~PjkEKNA+nKHS#0WL}sUX_eM=*E?SDF)I?^UrD#r# zxy~)4YFblc-VfVG^=VIyIdVs8%%wj@jk$)MsWD&Cx=>@j>UE>WJQh8uG4Bbzs4?Fa z42?Qo_B%BxytAi7K5O-kTGmt4nA_ers-|C5&9hN8iBUBJqiUXys(B%*W=K@cu&A05 z)R_Bc6gB2i9z%_J9~&3d=jEuH3DgMV6=V`M=CYW~7x5&k`y<-%>+k_IaD~{8sxd;WMX6XJ-avskA*Lg13L!=!Hl+~# zaUM_bk?S{TmRg94cbuOzDMq0hiD%1M{F!Mj^JLTqc%-G?^I} zC($a45W7(I1|e4BwyZ)-MY?Q448Uo$$<8uS{YD|)#_c&+Ph_}Bi05z??Q#mS2Q_aN z;vE#tCB#f*xf9>CBBUrFL|be? zx`IM9#xkTU#59&6U17EZ%aQ6f_7RpKwulf7F&{sp=IugE!S^VC2m2TYQLLyCiTDKh z?i8XYHX&;ZmqyJp*>#2 z0(^|0k-MT0@o0sCn2SyL2I(uY{%DBtScgN1i|0O$8t8;^SccD#&v{i4FJ< zQdDL>R7VGl#2eU!v&eEk^WtGVjhWbt?~$eo_jNpo?wE*`*n?k@t19~j&Cnmyu@(pL zD{@t%9c?fO3$YE~Aysv@6ZOyoM%OM>vkOHH9dG+IS2@Fb|t> z3^BF1A0r;k(GOFw3I}l+H$5Ok88ktEOuV_TB08&;VtaOX{3FS zeT+xY6Qi&YU*IQXeu(EH)IcXZkC|AF&v6Qw9v0#b)Imo~##`8dZz1dR7)3=qf*u%y zMc9Oc_!-$62vHoh&=${P5|-j497oEAY!k|(A-Z80Ucq{NfpbXTh;_pKXo@E>4zFPo z4&WlPKO)4PsEO8i8so4K>#+|PkiIeFp$eL!FUBDWTX76mkgbUjB~T0PF%Yw`4!dyz zagPdd3(DhRbjBb|!JF8E12~5aO*zh}fckhG12Gv%cpnFG9%-BLe20o?fX*0%Nq7@m zZ~*6!raAi&Ws!h(=!ciE2pg~$ClJ$u6yjkZX{G%Udu9KboGYRR^tBx;};dSEDK zVI_9pYy6B1t$3`UEb5{Sp2A4X!Ag9DBe;Mxtyve8LM^mFFAT*DEW=hDz!{`y!}_2k zYM=#rV>squB|gFtTtJ$(jE^#?jaKN5;h2M!_y|XE0cqONAEi(WEzk=?F$2r+KK9`> zV%rOm14VHk8sKpZz(l-;b@&9|;u6w#;Q0(CP!&zk9nWJT7GO0#!a?lM|+>JVD zi9Q&G=~#j7IE1rE(MgCKQ4|$X4^7btPhv18VjQ|k4Xd#Yd+{G!fZLhe;)-{2&Ef%^pSlaL+xQ50oS74^^Cztj9KdiZ5{#KjH#@L(1;F_TVPu#~mnzil~kRG)8MYj$Y`G z7cd%=FdK`o3~R6%JFo|b@g2_K5@LFAA3!$bMq%8AdvQN%qXC+u1G?d948(A}jOmz% zH?ayE@BwyVKfb{U`~=aH=Tl@xPTY#3D2+;}fd|n9ZO|D{;#s_iF_?@wcnxo1EwqlY)Y%X^^X)lxj^}QieXj=xsF!$B^cH=@Q{rjS zS3D#7@tMi9e14iJo)ZJbAo08yEM5>V^6B7EF-!~>Bg9BPtsE`Jh_PI0@g?!H7%wJ> ziTt(UWHCid<=V&7`Hs*`F-y!AbHrTnig;Db<0{JwI1AAtzL)g6c!O{Cy(yCTj`C8@ zL;jXnE>?(@VwHGXtQPNxHC%OZ9cPkRFE)sc;ytlRY!+L%n%&mWH}*ahABpW^2iIuc z$u}B46}!Y|;&ZM;wTH9G?h{{dM%n%1fH)`)iNk#7nUIyxfuFH_&b_`Uhmwy1H{zsT*<{dK#y?6}_@hbu4y_i=}-I640J z{3GXA(~3+IY%k!3*GAMO_RjOs^b{(7TsUp@Vl`+0rhseI(IN>_guGiCR zi}jb~)kn7Le!9-v*WR+#yqdR9^g4U(k^9M;U+p(<-!V&ly?OL{nDe^4j)s@#jUA4|>!IuPQoS+NIdawbx}Tcg0I#pgYKNzFowqDKc4Vp7Ia9=Zx=xjP8R2QQZ1qhl zZ#jA!^m?jesp_(X=2d-ihxUtJM_qdT)Y__Lcw?z~)ba7^^cX7E^mePy-MndawL0Bj zZS>JvG(x4x>sT5pf) z>-AUbr|Yu>kN0r9w{AMVno_On)%4SSa{JpK8S8aYZIR=tY2Bv#t2lC6#d=KLrsj*R zQ^!)zqe?xd9$(k#K6)IlULE7`GQ)k;W6j%k-LA*=w!@n*vQ5qFwVB7ot2bZM)H-|j zL37!9TlDtn^&!(3Y@?pnYcuEPH^5Lo^|;W};W5JdN!>fuGBmHRJyy8CJ%+cQYCFBh zjoqGntUety$4q|y-(L^Cf5PK??-|3fIeujS$Z6Hzj(=~A|5<%_TasH|bX~Z=xsEr4 zj%&ET7l+r)oX@LQee8bb{t3@-*X!~0{JOOJ>DcbC>XVx%+%LQ>dW^_2-0%0-QT5mT zBIni9y6unGBYOO+nNKgnd|caOscqE4ZQlCm?bl`U`zySh@ce(JPH($c{{HXK?8?y1 zdqusPe8CMI-y8jZ-c;^Tr0Tu4Ld0q+I$uzdZ!@TTK`G8?Sc>bamg2h%;e0_!&cj+V zxUQ7S7pNYpUxME|oG&OvzMv%ef|8s)NcCtXTJx`!pD*Y@zMupDI!FBLLB>G+Q~844 zp{YK8tZMrB`2tnvWe!wN)p9lYg2_?&g4t2|g0V)vU~DK~@De$QaK2z-kS`c(F{7mO!gFo}G@1V3LeA(Ste}FbIEF4AcOHUd5)=! zIa~ZHu880G&}=rb>&y_b&a31?QabaPb28bFDg2ue%8SeqS)92dtMdvuka;49vsmPG zZgz4xV?}N!kCWHQ=j3;8btaGx87m4qFNq?~DshKXl&NCQ@=%^+6`7K^LVIB)%bpa< zy-XteGM1^AD5o*jc(oC4HB()a7JiW`wqCEYS*4)XB+K&v%Nk)w$W5r)XR3EEh@6 z66Y8bWvPG=%(RE#~goVxMsfqKpymc7IInEkHy#B|nm zDmAlN=04h{iTxafnc@&Xr?V}q@J6V0CjE|cBv-H>yrVcRwAB+i3)Tgv9?PG^x?FND z^Y02rR7gik=}Hx=e<@`urqjq(BArYxGsuiGlguo$$QxuY#b>avEcDd%&{YRlYCU0IaSfvo68omrEDcz zqn^`FwwE24?!@%tva@_bc9C6WH`!hGkUeE1`K0VE`>>p+?ixnXXOByD4&x9 z8KniIHIq%{5IIy1lf&f*IZ}?2qvaSmR*sV|$(QALIYCa8ljLMMMNXB||-^(B5kMe{(DNo7M@{Bwy&&l)hg8WJT zEPs&~A ztMtEdD6-`Dx%(AMnqoy66!jI=IpKB9&f6%EwFlA4uzqR*n1$bW@c`M3iV$ru^(N)ykg_5Bbb>9B6 zd`q_ipO)Rn6;&%F+h0}w@sUn$ww%VX(Z@IP*s8g7y)G9RL#>lHyYGhX5nlC%h-p6a zb|ysKqr$WA6&vZjkyo_6e0HX8d&7;PNXL7{&8%w=+{|mq&77-I#eaNL>!~uzk+*Am zq^tTvUq8~<`bcLEj&#gb9%=QNQ{?U19_i}-(ASUjwLa3tf+PL!cuZeE(&0zZwSD#u zAL+QOd`!oMS0yxcZ6DJ$uRo@P{d;YXbnSoHWBU4$4i5A+en%EQ(wsx%s@{-5m;M>^QQ*Yb7x>4+o!?|AP${Q8mpM~-ych$Ef)Dj(D8`y`RKYx|hKex$?u_F6us zBaigI<1szb-_UFMI<2yy{LRsSc{Wt-SnqW@{Z&4u)BDFl7uWVNJ=!1k`jNiYIWo0l z|4r|`uODgs2>R!abjGWEOlJ(QN@(iZKBmX|qhEha|8qzB@4ik)9(esBn@+*-MTOv| zCUxwnKUR#0^=G!aoxiFKC1}ENtkFesA zUL2ZB{kUYcd!HDFm)FYbKhNs#eP$o-|Bbgk!T9$2x3bupOX-93-2#4TNRG; zSo`x9Ykp3OV9cM(YWK2i;qh`<h8`_tH8d`HS?cceZ4WNW-i*8BsE`T1*nBX;B> zYyNwT`5o76cbq*&f5)+3@7kN~^1DzReqQrp&Jy80otnL@yiO)tZ$FRe@p;`$w!ioIj$SUWqx9GJOGn!K!TaokF8-}iXfhl(w&EsU9CUcp zYWL%yy{Xmi$3c6Y&~o+qan=Vf)~h2vx8^@!#oN6&81Eaa-H(IzqgJ~g2kkAa_3`&t zus+qS`CD7@!(JSWSH)`g^&^+}I0)iftoT;ral%rK7Jgumk%u|e7yR3aj^U`*8Bslc(fM>6o+6cyZ{b zsyEvm_c^m&$9lQ^Rf)QV$NM$Z5{^0fm}(FGRQ=5Uj%#hVj`jHNYv%kq*6q@2*KyFk z(41fTv2N!tX4K6OSwHjrp5vI0lOPV}f7Y7ckAwFASnYnS+vR+-UB|lJwboz9y4`uo zoL|R5yZJomIDQ>nNLcBi-59u;r&+JpXn9I916zBSr8%aj%K z`wqA8{pmg{&KDXv++N!HeIVZJANt8SuC+co*6q@2w`0eAopW>?Y+oO9d5#s!lU}>- z@5eG&zSmCZ{a)qw<4jQ2b`1>865j6VR(zYe94E<(^>UoIt=Mi~WzE0Zh&j`o5j)Q7 z)_8s#Y^VRY5B1_WNb7k(TJ!5z&mUtw&UGB@p904Ea3-x#OL+g(_V$lne#|DLzhlKh zGujr!GdSa(wZHB*#^bDf-u@2eZ)UaUx8j?O*pc4rbol+I7l-okjH!qH z{eI-h=@dOb`SOVQIU{6fC_Nr$)AqJ2v^MHTckgvDh`U*FS1ayf#TBgap0L_GTk+#o zT-locF{{0d)!xZ!?`XxPt^Sv+?RUNQV29ii+Vb%IHpXgiX|y~1y|TK6`xo)X_s4VO zn?}16^RXGbX3QBmt>u+8`%AljajSoAqd%V;8?nP*fU8@0eTQ3dHY0ZUTWWO+_kYZa zb6D{RBX(SC`(1l~s+KU*mBhCHi zIA-1|h=co6UUPo;D=!ZHWWVZI-(TEktadAwlg#n#*gb5`@5jOV+-7ZWRkMHGWG~k1 zqvKF5>lsYtT3FiDd_S?y;hDHwGpQd^JgZ3Fl?6}tU>e%n^xKsYUU z>`UhQTQO(sHOAvFFpb!W^}Ye1k5>=}<6HYT){ldB>-iwok9B+8^XB^LShvTT&rgny zb$i@kYkoi0?XfSK?K;-&aW9zdIu6>c`Q!XJXt&lc&X09_tTn!lgLZ5EW9{{~_D`%I z>-poX{j1}k-8w#T*6~Sg-G6i(%x@k4I5XxiyhAk5j&iBMcwrBg4plxq_VchiaE=&wfxtN*om_qFFMxa%kiP9VEH-@ z+Q(V#eyrQ$to75eZkI!?`Tbb8r?lqRanNoZ@08Z@mgeWTjvc%Ez2)oibR61C>h)@h z)o#W9=VZbDiJ5Bl*RdW?TFcY1-|qc2PWX6pHgaz~J%6k4)ke%2#jV%#j#m7&)jx|BZ@1#l zjM(8^J?a+zy~2yhH?R|ut7kmw_5R_^@5XqXCEbV}=fhAO9{+SG<_z`5IF9t{^|+4g zZ;j)>Z_vlx`N(XSXRYOUF;_^iesB8TU;YQy^1b?C`7sBK@j2_h6|Xm9$2n-kTmi*6 zPL6xTYX8J)H;1qyHdl4f>%)}M?l_~3`5o67?6`?$?CiDTFU{C}#fZ5Y zh7mii{kYw2u5XOF{Z0ydf0_G}t8*Chv;Efo$YHcQ&Msqp1ZP`RxA6Y^+UUu+8xf+ zr*7fnU*C$0TX9Njyp+axTrtIHcicJF{C8UMcys^CJyv@KD_(5$=gMQo^0;b_75A}X z^Y?x}A2P;wVx}80S9CGvcVg`0vC!)OthGPv=h-$^|F%|~*4n-d#`1aJWyM*n_y#M^ zYQ;BMaXu?9X~nax^?TWhhgj>IWW}#q<1Mx3?`O5gS@ZWc+8t-7HU9-GzHG(cS@C;T zY`+hmWwm#()~A6L+poLk`$_%C3O~L+vBtOazPDK8S2bcM*1Z2Y?p$lU^Jf1TdwUuh z?Yw?kab+tmWW|$lt@iJ&INrFwaAiQN zeXA9BwBp%TJl7iUq|xp;$E@|+W3=-=-HP9{;z~yBNb`LpS1~i%x$2=6_p#zlR=mNA zD_YyL&uYKVYCmJOKV!w`jM#DP`}aU={|vI?=dJj-F&>|fT5*!m-;w)_nD@O_Y`@mFvo(K$)!x90KeYNcvD%wjadRvF zj}`B?_IF-u{AXM>L-_fuy3rmABHEo8dw=ye=67Pv=RYUrGi!ai7~?y!-gx{@!YZ(; z-v7`%5i8}z5kG^T|DT_T*lKHAA~x5YwEF#FsP^jh|Nqz?Fb~Y{M|sHu6cF|K_EZAj zG_Amd)l;@12HMkC6Ij+R_5ZB_%&tJn-Cd$j-&sP!g{CreY<(x^? zI5&QC&Y0AKE91p;ZM;W0-_dm+MUx;Cg%oMZJjS)n<7O{N+_= zdH1rs2P2l1&RSM8e>qM4vFiSXvF?u=s|8mg^wzs+XuTu%RspVyQjoLss(n+0>qp(r zwaJQdT{3SSQ?dub<2C2nLf$wTf+6yXnpd%o*+ScE?q6?QZ{IeH*tgy~s(q_&ck-_) z*YIhFM>yZ`Q)tiHc0?zUkE<5u3)V$VwBm`ZHGe(VhOaNSWn0>@E$u}d$0r5-Q*sr9 zR2-$$T=_5!$15#=?U|0htVqwNG#NOLRYqeh9>9^e$Tshx@7HiAS6xHY^Jruc8bG(G zF8))#*DV~Ve&KGxqNr2jc|si`2Z(6#=kRzFh)D3o- zo{IB+WlzdrLgtt<;rL*V0g5L?yd{Si~WodVMRKnlq$Pd5m&yO4?F!ol;in`!r;XQgAI? zrgNv|`l!T>P!Q9pi=%D`)3uoI9PuxBkLk*cm6MIkfs@Q1PhA%3Zf1dlS&0h7pRgSD zSGseFOR&5e#24vHMxHB6avfvhU9?jbTK{jE=M3>t%8x0ZV?HL^qBVYE(fQPV<#vVX zTbMpWnTPT+d z3y5X8Q-~?Vx5Sy$c0zri@(J^(UtDY85ypIjx&!o4e;hT8I`yViec-E-dFqQOy>X6l zDig0~`Y6k9!+f2n8^v^g=6#sy#+2nKyRw`{7>t9+&;8|7?jO6j&vat?VJv4lCFNPl z1e9lb4(0P`i^$u31nP}=3tubBzF6d2PN}F58I<)E%gB9C$&6yCgIBS{_W|W`oWpsj zrz=IB|2r#g^4&_Q6!yhaK7y8b4BhY|hC)3aXJH#+IM!uR!Iwa(Jc3r}jzp;Y#R!bX z7`%i9ScD`j^{t?M8*6<#D3$#O0A`1#bJqHy>36w-Bl*T%AHgraSRM;$kpUTz1%*)r z#Zdw!Q3_>I!Pk_s8Cswfy88xEDuXc$qc8^JFdmaJ1=D;pC}(0WUcmw^!eYFQoxWHe zhiQ=>8Ic)D){PBD)rG2Ezk;mF#v-x0aLI9%kU1?`qoo!fx~NTag^}IQ&z)s z7>MV6FHjD{2+YN+zWJ0%Sn69#sjSB)Z1L@px%)dK_y=T zWdk%pGqm!xqil~Z=!Pfp97g$OQEtZjzU`FCPF%!g)Zm*3wNM8MXoyFAO(>h8C5B)a zMq&(-uoTO&3hS`mw~=x)wqiH-B4ZYgAF|>`G(jRpV;0WiXZ#B12KGlbo)a+u&tVE? z;W$pgyFNtEZIt{!p=67U4N zp%)VI8j`RLT>D*QLmt$}d|zx%9@nUf+8BgcSd2HZ8s9*@&&-cHsD~!#k3Mf15V&9&f@|u`qWHaI3E% zrBc{egt9EkqY|p3ChGcHQVs#XlZ&JH9w%@HXTk5lq5ul{ic%`Y(E(k3iIfvC3-ho5 zi;;vCScP?1k1g1W9oUK8*o%XREzWi#FK)wKD201a9`|7areh{%<03BOH^kn>>pt$n zD9pmUIECLJ?k287S(oRPS6DuNh5D2s?K~cn$c-Yn9r5Ub0ho?iIEn1@>4$t6g5mf8 zJMjs2`97!Ihcj>%@GBf*kpiia7Woj5o*0N_ID?;X$@eSe6{KFs@j!7@Lre6-^H_?H zeTONJ;uuciBCbHaVJwVzR7Mp%fR^ZuzP@KE-^3E%a>^BW8*8!Nw~&=j4}4PQaL&g;q^?nl^y4{-_N7oLAE(hvKfK6Q;l z7Gy^*UvA36D1y?s2jx-G7f*Q~?nf0=!xHR5v&*~>M}=Q`UchLK!}~aeU(o%ErzfS- z$M-a)@{F%Pr7{4Qk@q)Vw{ahupgpEz7S>@S-p2>{7@uMfzQBI4XGz?67yB+qSs3@C zJSw0P>L3Blkcf+jC-Kn>iG2TO8fIZ9gzJdhD2iH0z>`SCbj-qg*ou$w2|kC2p&d!s zg}t~05$lLTD2_JhhQ8>BVHkmNcp2j{5wkHDORx-Y;~lJlh;u~g6s$iQpd~sW5rgp} zlCTu3!SyCZEK>SXQ&H1Ch?*cT4Ki zJ7OV{umpl{|KE&4zT%Ws(GAZb37c>j7vS>O17*-1J@BM&5apZLiErU%azsH?@l~f( z63_#^eS;{MVgoke3*UZ9MPznFCS<|wNW=>m;u}Ue5~DF4GqC_kIEYyOiZv}VAS1G% zFp8i!N}wc4p)4x+5-62sXa#YDBko3Z)ItliLL%P8CTzz0zQnAKSd6{+5+a);ilK@x zk#Z4M`2=adn-Gs`5S%UJcFe*d{D!z3j!5N8OPK{(kqtMZ7%KVhqf};LJ{Dmoj`+T& zRD?Q92hyMf?)4>5DorsI(|t*lKSSKiV+N^lC*plQC`Uu&VttVksgMT6QO(zqvK>00 zBOb$0O!6J(+X!cnl-r{cHeJm~h{yeCgFfhw(TMNjhyf5?Io?R{y+k<^hj9d7`_x&cetMDqLwLR$ zK{=9b$Ei0RaTe!s3BTeBxGt;6w}f%=5Za;xy5Z7N+Sjm8&<*{Nh#?q*$q=78qCOg8 z8fIW7=J;NvoQH*Y9gFcc-tn!ad=Hxu`?(`hAT`qA24us{xCLcV4iyoPDyZhGMVWwy z@ak?JdsvT+_yYTJ5tnhp9>&GpD2=*EKo@kw5DdctEW$=?!iP|QWqOPHOVcBcxC3QS z0d;+2zH-DHSdZ^<_&<&~hHvpbe#8l!!WD>b85`m|jz1poi4#0`Ar`rj7x{3juMnkj z8%p4AltEcvIZCCnuR5ht)AsmsFaMXf9@9|`h%1nxrR#```yZ<#TUr(5JfC#d|T&Rgzh`VhXw zaoG9FS}D9drOHvRM`T{|S7Jq^vJ?$6Q1I&3GT%pgv35j>x>G`b~<0=zxf-SG;A;aYM!$^^Hf1~ z)W8F%g9cC^+ePL-+Yq-$SLi(GK&A)bTIE62=UW@G1zYg}wnOJf_b{y-!%6T-@*n0) z)n{f^Pz^Ou3w6){4Ut?PwGH*{(G@D6ItW*rPhCUbP1u61_yF7SId&s5&-yj-F`R_X zx2n%|?R;w$>Z+jzYC-2)8!@f&t!>aAU7_=?&oMm+SDSzRfWFGd_zb&!dnpg$7*0Zc zK6(}^Uwbc9p0+L$&=`LuUz=Qhb}M6S$4=~nov*!-+-wfy!EGqzD?_Q2^;M*d%EcH-szZye{5u_A5SiyyIbJ)zn};0k?I@0NsD?kv_wJ%xXQA@KWe|^=Q2F6M$_wwL{Zo7f zl?zsR;D2NOw^AOq3H5#5DU|`fF_hD=6Z>(*_YLJK$h`midE&p4A0ANj+T@21GtO^_ z%o7(Y{`-02$+S(uKbbGqdE&0~c(027Q2FB1_&a&xLJLU8`*dD7k$5w9Vjm8}&JPz| z=;ehUrqp@iM5fn6<%Rd*FmxWc^djzasDlJFMoZ{Cu$|XENt?>+Ucmn(uY3G8J_Esz zIE7#EKgsj{llfhBjra`6gJLL&yHN-A@OSgS8Oh=1fX)L~Vp@sJ2mf#6fq!+#UBJ!< zAC~;CjpXveeaZV?ZC-d*48MQkdVZMvLu&F5h(lT=mnXi5`g>8y_eXi-WAqVe{(j!L z5P9R`D2v4OUjFzs%GZ&E-^(K>WFW7D!AL@69$Anhu7>tdIphIYjg3B?M?OXT3q&Sz zEhvpjPOkk68!@e@{Bs+$M`v_HFQ|O9%0nlhF`7f?qa*XsJE`9Xm5*MIRag&| zmp%ZMmyU!x|`pQ#QKqXX10vaQ^y!I&S$6zd8g358v!a}G#_l0Yi=Wh9!BRWCnyVo6wy2M+NupG~4Ts-fK{ z><>JF9(V==F&M+K2ydYBr#uGm-1}k z^EXl(HEQw4=Iv5Dv}@j~L;Geenlx$h%=>@p(4>XWCf%2y`x91v`l-~^4_mhA@Ls!A zSZSHs;=Om@eXnh^pT5?Sc?OA>rd}|iS7?Q-Fn`DFJLI+`m?Rtw(8IX z`E$slXFY*N&w4I>Rep?LCObc@QhnOQks#fX|<@ai`I_3v!+armh=|7rnMccw`-#YR;{gvt8SBKqp+?x<$a zt1KEZL@9mePi%t`8>|IofoYRmrs*|vF`)b=f!w{45w7FdQIT2@zj z^sg(u-4b*1-e0O~J@nVLXvpd+-~JjZE!(wf-lo-m)^PCgzpe)dt7+02qumRYX!DA@ zD>b!M+qYY_!)B67iR#emy|!GI*8A9Y-h3k%44`#=4)#yWvTXcsIgVwyw$HYx2miSi zD0JGE6R<7Y_T!T4`204c{Wkq^0)C(6`suP|2LjlG(&Y6wQ~w!L)~InitjrHvR-4E-8l^UQw!>fEZ`s7x_!nPPCM8Vt+b!Q| z{--t_u#j7Iz}o!-&JAB-^64s*^*xi%yxaUgn!Vek$v^+(&D1xZp+COwH1w`EdbaJK z-o-Z30x5czjwWrIkOIR0esvSA+J4T&OSnbIO@{}7!;MpME@|Js*}E7`#(OUHjptI| zd@9xVN_Ba%_E+TNPkQ#B#+j;3tG8Ob|9Df()jv}l9K-=(O3K$TH- z$hyfv>K8w0;rrozo>Zgfy@BOG(Xz?A@A`i9m?!acBTwSJ_gl836Gv*>mVa*cW6HoU zKK#-9Z>IX1R1MqcMNj;RQtd`L=0Sh?b|hK)T%v}MTeGuXxF?=vo}+lG9Z9Xqt6ggeT;j$Pc5*r^hw z)M2xe<%W)1;=oast+=M+9p{dW%fAKgM)A(N;Xq zGnT;}tM8TJ2Qh!}R^f*+Ke(arqnICZm+)E4uc#;d1m;&gBz!jWJs%K0m-&o4gwJFC zvdZT(zf|StGr#bDkzdUGe)Xr2`CR2!GGDIt)-pd)?QLX!tlBGP{!9b0U&8!ujei&O zyB?A2rOfBvDSSEeQ&j%2T-V7u%KW5SB7dCuA@>Pi!Td4J=Q-x*>Ufu!pRd($jrp9~ zqMt~FX+qc46+WH$tLk5O=2vNX^=3ZP75NP2N9y>4nBSq}4`V(@^+z#3CoK9|%m;;? zz^q1}&FoN}om}Qu$3#4j`9qqWeCDU8$o2WmpV4eBX1Wlqi<`?LACCpz}d%Kt)qT`h^zge%BGk-w&!_1%5@s2Wo{vH|cIP=T(dIj?t zI{rE4M?^*b67vH!f7h7bahqIEbTqSnRI59k`D~T%&irA$-kbSyM&^5Jy%jS*N9U)6d2e^z#eClelJ8RHdn;eg{7hXfhnde;{wVWh z${#m8Z^adSZINC($NXO9FEKwu`D@JYQ$Eqj%>4r8)0w}nzIA7Qfaan%^Ltc2gL%J% zHi%i>7ltw0QLT+)zEUeAi}|i%=cD)KJyoK{Kd>) zQNED*`5Mhi=4UIvmignl4{l_BsotlGnZHs;!Y^TdpI+a^{PK{_JoC9)Ipxd`(w*!u z^M~&i`J>E_RQt!7AFmr_gdwQNB0x+jJ+)V1B4xAH@7x<%cm}rt+hh&(!N#%oi&^f%&5 zUe9HIxAJ++pHcaI=7(v#^F?3R^J3Rmzt$KVSL7%;zY7l=(5rA7_3_1F=`Z{3lxf=a^rm`MAV?`E$0!Q_lSE+l4>Oe72_lDD!*O|KrSW z*7Q~|KUmA-9P>x@_H&8(0+qkU{50hgUCs2*(fHDtFVgtBGe1iG@6CKaEr$%|PpW@| zn9ou9Va)f`ct$Z_s`j&(|5P92CNSUqe#u8R^CxwC&1F7Y{moN&^!I4!SB%-DvZ}~GnLQi+snD3$E zC%T*YAENn6XMU{KcX#G5==}9&zFheX<~OVVgP2$MhB13e`BBV|({QqwAEv8$0`ryX zPB!yJ>h80V`Pts| zGrv{SQNsL6Ew5e7XDDCF{9rBra^?%Q{0=ieL-TQz`RVHaapn(dIaV;gL-TWv`AfPR zUShtt=JOi!c=(r3^m>@-S2ms5Me0s>=Fe(6dNW_D?q@K+SLFvWU##-On9pn|!;NA- zali0c%n#S=6PTZ%)tb%xNDVKS`D{&p9`ob09P*hTuG2Z6`GvX~7BfFd{VQaCpzoB3?zbD7UlK9Bj$%I7n`TKW0R=PSRM z`2)%qGCxcGS;_n$<<~Or9c4E%U!eIdX8wS#))MA-=*?pn^CL80rOcnxe3UbPP3z+@ z^M|$Ek1~H+%j-DvQ+2sjFyCMKbIjjR`Af`C(($h`|B3pW=w;^rVo>HUo%x0OXxp9n z8Orx&eznSHFuy_V4`P0-=5HADn{~WV%&%1WEatl?KY{rbn!jx36Ss(exy*0T`10hs zu9tk~PbG`|eCB8A?zfnE@7t6@<}av!D@9(%U(5VnwYQP^F3J}(pHRMp`GxB5F6K{p zH-F|Q>Gg8v_v!V+BCq2gWj;gYk28N=`3mL>bo_J7Pf`97^Pi~vHRcED^+azo|0Q}o zo%w#ce!DY&Sm(Pp^9A~BlfitU`ag*I61_f*`J>8@Vt$C)%VNHp&gTT?J1L*de1GM0 zncp0c`ORbg5n=P09j)T?na@#vG4u0vc@;80OWj||d`~sMmicSy{zm2x=yEM){)m=) z3G)|qd)~$TTn)FB`K4;VocRpBewg_(y?&JW-Fp2v^TYLe1@lvsKgWEw`g@7_6RLlW z`Ex3t=wqgTt}efH=8tQ9-I?E@%cnQuF;#^SKYn^+M){D8G{V$_M27 zTIM&Xy^YMzRlb<{(aM*IzVf@6KW^+rQ!M+Vc!r$}Y%4WZLtjHH`HmDT-rZ`A))$TX zQhfebQhdpFG@1tC`+f1`w1)Nrz7#vfYHY{iz6Mr`uc4D%-~UmHW7O)q0LnIjk{$Oo zwnGrKAMJJN1l(h6n-OWCJIH=w_gQKeAsz zAX#==LkFWdDfq5>n2i<@jk4`mZ1_$AIPp+xB&NHSY}GRiQsTrj;0t$BhFA!>bLzzq zfI~6+Vakb*q7qFul2By%PeH8R*t(znSoG_HF3Fpro8P9Vj6^Yj&mtf*8$ z5V;GQDo6<;Qz=$*-3Bga?{QxY`3pXR0*QUs@>6E)$9 zDQ@yz_`hEKd#@%@dDL%0O@k07s@TU9Yv^xiQSiPLR37Eo zB5zz2UGnp2OhqBCgoRQy^K&;(b=?$XJB~CqObNw($@gR0{mBm``M{x88bq8|kY-=< zJxRz+@?E&ApbJqs|M@JIRzX7)frO{3x6b00hz?;AuY#?Hp(q*U)~7 zwV!(42^rmx(N&+3u_~`E@(TYy(8Qz(=F{T7lt6tQ!{69`3}Y<87+JyR?G(_9$lKc0 zy?unod*pcslbPZeNBzmqVOt|lO)>l84^iHbKeR~}<-r%fhPt5SdsLJ>NwRBr=v4R6 z=p}#4>=MRlW65)$mMaFq*eOId@PT|8tC}`m&3Cqq;l%TgYf`gsE=R~vkeYKVpbllfretp zF@`J{3X36My?984K}X{eF%*RnEN7J8HxeH0;>g^BPe^VoUOL?1Pq z7gk9F|0_tPv4ZV^^h3AM6wxJ`?kEM$*KvP&#IAdb<-;Awa!nrwk4D1~r&Zr1`XOX( zSc^YNv7tNuEknQ&7;iw6=HrDf6aG0l+M!xEuuMUC%2noYHO*Xwd*7l}ZtBsF-bKOC z-chfi-PEkwZ{uQ$-89<9yOUb9i5M?sa~|@r?(*II7~+z{_cpVok&_RZ-7Wbsq**jE zdSisiY&yBx*iJ{vG{2OG&zeuwbthzV2DM8!~^vn`~S|DDD|LEKzBm_brW3BNETg^)twSfcLl%|sse4Tb% zJNe~?I32{T4-r_3n_|bU4y5No1;22c`Hs=U;uJ;NEvY+<)aaVV*D)Ci!n zbwh0a*t+Q+;K$bSUG&@3PeS6Bzabs7swJDUXXXGyH+1-}jNCTFYQt0_riN}>L(D#G zqC0N=9FAebKu8XiIkwC1q0Hbm%^K0kkJHeg-~w!zS#JnKA=swLZRmd$Ca~J^<4=o+ z(&EmC@sHZGpYV)ky&-LbcJg;Y8a|CTK}>ZDw!r9by`@8kP_uL>Ro>Y!!#f*h(E90L zN6v;ce+V`KM`+q;uYZV1bAz+Z%tfj0X<+>FH;qP^fS=Lt!Wr6y5|$o9mpq~iH9-S) zZlD7pxJPIK+O6Z2!4Hz3j($&1WVAI>{1l~;g3)#+x3$gbwW=3M`M_L=)`Abl9e9!a zZ_yWM+k<`7JJS7ZLkk-VEkoMEOuCZqY3T6b8*>U7I!U5#qPL3^GEro_><4k*tI;4XBWuw&V1&z<_AOX3>njc-p87$2nJ+C~uNm$`WGz0$ zA`;-eibrrCLB}N|%%auOEZP9dyi|PA5M8UA{9_o`rCMd2c4zw)2$cC~FM2919%+V+ z2kt+SL=f1DEj~8B3ujt3PWKjX@4FSE_dCfyL4>cQC5LDeq)CPAcJi-HSO_tij4rgC zX1hb{sJSIk7c%ZgzqyytqV+{%M*UHn&YPmhxk4@f$pnLWd4)3;YaP8?({A=_nmC$P z3{SQ~KC>SMRV^MRf6W$Z95N;!@zP?Ry100)C>n`i(Dj+`_y5^4UCjYcS0Lz~$gLeViYRx_b z9*2G`R$6{K)jnFpI4`20Lv-fDBLnTgID?xL8Er&PGwP6?HCi9F(o2757qD@T}$R9iTpKys1Zq~*> z8ygsfoF*Xz<_&tgH)vfmX!KD?B!|f~-5bqS#GCwvG1Az63WhPukHHz*qwc3iKpy|4 zYSEdS6ehUZKqfIp7iD7VTrb+mZ^GJx)zoj|C#y&6L8@w!eaXMnMemE&q0p@42s`*1 znvWXWKgB|hf5fYq);m8i8aG1G`V>HoC}W5+ISIeaHB^jEx2kJ&dibDq9BhZ=-_$e9 zm6kFEA}3fnZ4vFqo`DT20i=4g&od~h6gg;`0*|{5a2uuI>ELS42bTTHKYsrIp8*s~ zWu@~$t%;V;vTwhm&YgAds#pK+d+xn2r9s2{A9(PghaY+LTi<@{@h6^qs?pQWJo{YZ z=U;g7JKz1@_g{MXmG}>S_@gFGUwy6FkAL#hpZ)yxU;NWQzwze3{Od1&_3PjK+rR(z zcd6^F_0|Tf!=FC<^MCy1KmY5$|L1={N?0AOPF80t-Rfd>wYpi|tsYiStC!W=>SOh_ z`dJxPe`|m>&>Cb7wuV?ktzp)1Yos;G8f}fSGOa9YtToOWZ%wc!S(B}7E618*O|^2Z zY1VXWhLvZ{v}Reet$b^aHP@PF&9@d<3#~=gVrz-D)GDwFt!377YlXGaT4k-a)>vz; zGMsq>N#$1jGPc{lHjmg48l=@qIc?RhUE8v2-+G(luj2-SA+Y>kz52DowQEOwQTr9h z?)9bBa_^~qFYdl{2EGc`e_yOYQmtsbGnQ5C6rNryF>LH4h-*Zg0MUgm9S3oddX9lO zPsC>+I?|<2L2RX-qaaQb@d=1eiTD^qACfr&qAwALLG&cz5Qr-za}WVL@kVL!aI>T` z`eccpq<(_kL7$_Vv`Z?rV*B`m1QW>~-%oL1y9M_be*>&|Xr-jpy7z!}#5!nxZ0Deb zJcJ|BSQ7Wt{9UW|L5n`?q|xGTGvqtA-}sSk!LVnP66U|w4C_3Qz0fr#B8&JjU&5+t(|#3}080iu|Q?I0?MC;@SXh;1Ow60sFTZ_?TV z;so^+gXl#)MIcU6&t@%$nv29s?ycs?YYHQIi?vyPc3bvl>zA96+RYY{TP=abRD0il zHEEMYra_xhs9HB6G7-j7k~G>aBb&am5H?uG+1ubN#e6$j3K@qY6S0ey0yb%)fJ5k@ zcuguO-a6=@a5qV~@jKDMV}847Qi1rp+KMfekJ#XUS}hyf7>-86kSwY#c>DOPN$afG zMp(+A3~n%9KhZR45naRs$0}dbq=i;I;3?4a!RtwDtk`-H#ai1)PJoZ^00BMo41t!O zRswjKScgYZGui>_cs&VjtuxwBHcgsG1MS5qy~O9`R&1_Zgz1sw)mp>v^}U+3%!)sO zjx|*RnIynG2^3oK=g_gbN?;TTFi!#nR{TkHtf~^oA_3+}V5t>vjE$wh*0zYjn=FVhhk2_I%%m zsODI)`RJ@&qch)%%|mCTM(1oZgYo1VowKai97xi~HCzj1bEXx`M`x@?XPyYbWXKm)6scvjm{}nY#KUK zyv~ELnPbIr(b=FzXSNlaiq3{LIwxDPDd@bvM&~3emV?d*yv|QxbD|Z?M(2YyIwx4M z$>@BjM(21dHVK^%*XSH)#U`2xJmaI!Cmun;F@FiR$5`>_(J=v9k9t~Xa3RZzjYsFV zYIJ5=v2p19c8$(4R%|Rf>wBFSp+4G*WudcPjm}Y4EEApg)aV>(#m1oXz8ak)tk`ID zzTkC|ufwg_D0IG9qjQ)Q8;Q>E)aV>)#YUj>yI$vIs1LDX!_oP@8l8i!*f4Z{zeeXE zD>f9JFV*NAXvK!0vys<%1vUp*vBBtkszzsjD>ew7PuJ+ouwnzz`Am(@epYM%I#**e zG`EOvR5IiJ-9`|@_(_UI{#ItPAxfzo0Ipgx7~h+IZf=NLs_lb$#=-9 z5%&4))d_?-dvye1&Rz)+=Ir&69KHTmPG0{b2e1E*;&zU0;lJeA^`CM!|BIZy{zDF5 zf0h&ahjQZjlN`7@$T_{eoV(h|vFiglb-gdA_V?%*#E14apybS+^l$O1Q+rbD*uT+t zd@g+}?W2cu`Kp?}F2?cWcW6>Sz;_~a{`f6Eci3fixgfl68;$R*p4*S<9R9xjK8g=Y z=dpZ|hbIU~TQTH3r*8 zgSCmqOVHLB?T@jvXgr9~-k{NfHy;g~_YpGCn%u{UtJp-k-0S)jAInl)P1_~?ON|3o zQY-ZH5i6;cj4KDMcVeyR%;?7ciSFWV>=$&4c4M!T8-v@>DMyyt3@e4k%`JXT{Vm^HP^TTGhF`ynHK#L)8*4^Z2wYLKMDa;^_2m5C_j_0=|GX9a zgA{a#abvHNm836NNvSs5E1(?v9Tk8%Iw!pbN@n&ovm=RrGQGcv{r2WI;|FSZ_FLa? z;Ti3KHRAhq?BD4m<;H$QR%(5vXDi7wELHWaNtI_!ZsOT5W52n%&G_LOp8dx68+b;0 za1GD?HTG*dVY;z6S*iU6&*Godu<|S4uV96C{u)-^jQui-)2ADIIU2te%}aC|bYtJA z1DqTC9v#Ho*mvpZ<;K24hb=euBAqqd*b6l5cfL3*9i(Ll9L|3d`?=XU-B{yj9E;zL zJ!clb8+(@YOMG86@P(!GYV60+_;%8Lnsm0`M28;8bWl9Hz2<8YjSoj33X1jtH})iH z?zo92Jxi$Ot4TkIK@nS~8+$xTyO|q%j1+g>M3J5%suW+2{lIJlZtPp6u=^$o-K!KH zdNt|$u~)uCFvW>K)D+tb$&-+Ints$g%3zjYe9ujckFPS0ho|pi9&auPYj}_Z5XC%4 z`p9_Gq;JO_j>hp7KFv3F9yj&?Y45$sF!YdB74-8|64+(jSVK}M{h|Ww;}QGYJj}Ns z7T-tWDP|{eWA{aAe{f^>nmxgd-9u&$+|X-%V z#&8tDGIV3No2BQ*ZZpRPH+HKzkhrm1%(26bC7W}J8v}p=AJe!oe3FPyjoesL6r*5E zWk_1p&A;aODY5&b_<|Gi(P(@swUKB%m)dYNK8@N?G(Mf$U^G61+CVg(N39!;&!iTZ z2P{T{!_?fqQ=BGA{&=9=2k?*%JJel-mJ)5| zk-pu==f}QiuixUkBb*=bt#XM?pPKsOtM1`;(H-1gtIh3&pj>yk%{QO2`fyujzEE0o zXRJ*_?e)C|2QUw09_K?sSmuZp-688WGh$P$rk>awd}A4aSb>PmGq{^Y7JYNI(0Z-D zQP^p{W`r(^&_(N2T;6H@81aHw?p6)E)qO1q-!8?k1lY+F;`}jb%U$~D*r*+M;RZxc zy6nPvQ8^zV>y@rpzZ8IVbleEAgVX_Wn3A@&NQ zB(x$*elClO&}tD{V=f*u7K-)aSzIK~K24Gw#<zT&Z1EHP>r5O``9` zuiwVD21q;f7Us*6xh;@3k(?HPg3XjBvpdIM&uZDg0w^JVW88>#{E_v85_7WoeG3+IC9@6jNK>FUn z_HsmIfY*|TeeaOCb3}Zmi06w~{v9MXQ^gjNnCy(JAxaR7vbvn%K6gr{>u`HXOcY7G z-fPL^YBjl8MlQaCx3422_TL}G%kSW_sSuGw9Vtv1A>C`qVxo@3(x;Bhp@`>*SWX=h z8=zt{MJyj;G>3adY_+tDq@7d8o1|5uvQ8|Qh{y(rIGp!gBC=nsR*1+EY0IjtRfy>6 zI$Ra$lECyk$%5l4SE=}B5#K4|r6RVgt~XQr>T(7SLxk%1 zay_ow(!03Lkv3i0N-^;yfbNn7Br0dcY9CSQQ;+@%qAa>wyq31(-D&afaP=15%^vQ#n}_Z!DxL2!f!rg3q~F6H_PU4jFiFHFcrA(d zQt^o*zEs2u@8OK<&U;T&^Vb%3y~KW1KF)2?1Kd{J%WbB#do>Pe*TP(Y{oivB`(KWc z0&pR5FQsh6y>yxxcCVyt%Dr6P^TpmABQ*bB@_C*LEx4EWn6)Cb)?8k4uVmoFy*yBt z`*VX+49aO&2&9U(^dMUOxI^3)K}c-`xM#g z`IOii@e~hv`6-TU)zji_BW`C%n`o34|2BJhp%JTOKF!0=5S6T_y_@Lbr&;7AL};&? z@r+m%(F%ylgI(@3EV}*~7OfP~;%B_)mQl~LNZGTT*@73?+S2E^?I-OG$$0s*Y4Lm5 z*PhR@>WJsq*U8UOik3b{Daw0JQdESCf z4fqn4ng4=>@&fz0?M3lV+Dh?z(+g?wMy%4~MOIn#BAYD|(Iqc>ckpc@aup(U2hV(o ztqzqo@tw5z5UJBKFR{7RFR^Tq$gF+I+Y5Jz$nKYTdtI|vJ{jn-T!_;z^8ibv-7iM= zzGTYlC90o&FG=ohU?eKlIU+pgWx8DXl9bnym)W7EFZ1cINW@loEr~CCS;RMqc*)CB z*&?>%WzYW;B61!gG->^oiQC)sBaWp?T!2=P^SrE(KJ9>bNg+P!pdH~f2sDXhKB|RE zT<4E3Mx(_fLF{v71rh2zeCU5c{8EqN}GssDm&D(=PUf@Aasn}3_ z0%Zo7p(QxE8bP)*_o{7(Z~*gEsX%2xkSs2UAE;=SEh1U^c`k?AEu)fs{DMCmyK`e0g)dG!pLW- zJP2}O)B$w?ev1nSAxpbJE%T6ubg+sb?ev4H-S3cS7lPo~|3qYQKdd+;(^fdr z;z9bXvw4tynzzbzlEC71w)f#opN%%l=YlX!omKh5jSzc^=Nrjqu``<>WMX)U& zROJ?n{JCP0FH-LkTOhVt_x~;8!zBRmNI>-O^ft81bGK2K?hHo zN|tYhX}Lu$+a{LxfH0N|^uyjt9RdV}S+-5XoL3@Bn?V?*;u4soCpI}gU!)88I5|FQ zx}W#+xfwzf-f*~Q-UT5}?T`?Da$r#;*XuXKK|vvmJ6$E^rj zqNuFC0Dq3_99@zzmR=EmPF)qb{z?>IfkL4uti37;%Q}~i?iqes zT-f$$arH#Qi)#T1(0zEtII&tbM2Pf3LY(cdm-MEwn62$#YXzRQi)4*9p)yrT^hYT7 z@zlc(dvyT>&)Wd8oT)@&Kvn1q2Z;Rqfhs>x9Vqn)KiO`PU4{vh}w+f~6J8ST0bvUafeQlLa)Fy!S%j;n0;6A;F!0?lh; z2*l*Xv15pcodsb^XvP>ZJ7a_pmBW-6Dnw!^EZoXTT{lcD%pNZOR}L4k!r>5mhQ+c+ zh}c39#-ACZMQlnnf^t(iN^>)9v?$F2VU#ARcZo4ou}&T%x!E#Cg1C_-w#zbwn4v@k zDN1dx$`tz-K^Xf-R56hSu{E;WUdR%;MPp@vQ)9*M^0B6_Kg9*OUW|t8`ie@<(Ygj< zq8qEx6^;|DYeASbuyB%C?J-e^z2k+bR5Rz5C>{q7WmCH_PBO4+JWNp$ZBj)LH0;{( zIxI|bWt5Kh^L=f}1Q}#NHNyDnDb1fCN=qk*Qa5!Ggpr+~19YD#&h(uq*-F>AW~kDb zY6NLRRJM*BD4DI}7-^f^ipo|@M8x_%z$6jt1Hu$;jt(+FiGGtHZ*%?ODx00D^7$$T zf?U7_aRJl7va3jzHmB7&lA$B2RHVduCDv3MZL?Y^o+Rno2?B-=;{uv}Xt+*J&=9nB z7iH^APZpwr49eMcL$%igc~jN?6d{Ups?s@k zswgf4!S+>t*Hnnfd16_vh^@>O`vud~tPWJ1TV-~^G?8Bq!uXSzj;r-~PI9NClb#AD ztKqCU0foARIU-*c?D*nk62?CdZJJl`l+=d*-vXcu?_}T%9-+X znG8JRDCB76o+=CQgYm%~E)xaYl_(LSvPg(Tcc7Ej$S$y;gkVh+IS4ZWr&OW51adM@ zFvnu+LGVti1DsN#csu0ffPG%&=j{;rBJ~U(?-lM4P}Ck=HKSi5F*5;W>h3-bpj3$K zJ7E7dp5VkjQQWX!?Dtj0qWutik;SsgMC>34-l|mWloE%^ATO)&jLKi?2OO3;B@dU( zCNctP@g4fX&Io~PohySJ%|PX7*_KWn6opEilWWxosvzh{1wn+vAAb;LXz?FX?c#$N zPR?^jan)q$+7b2Yk_>W6iNqzyACoi4bw!i)xGV~zE{j6OWyr~-X5y-`JAF)$qsSRA zQ5;uj*Sj-nh@2ol3XW4^GKtYW;Z%`W%b6j>swqNrRbruB!De+#E!B z{6!eStc8^-3xZ@9d$O?0vb{i+UPb|#KmvGMI zi~OQ|h&|2A{d~TZNctSfS>+ND%hG{Bkar{IsCRjD#CGOV3BQ|q2ZCfP3siP^p~#K{ zVItYITmx7p#6;BwLD~?NJWN&XY0G7#0@co2jws}2w;or`>e{>dqlV1p-649eKtp{BM~Bghd*h|?vo zVJ2=TStUnyvsL7ntnT%!?jr$nn%yTEJF8X?DN)9{;AxZtp6+4NrB!-NB|(tL$DSiF z#u>Q;!Z=c?ve&B-qy!1^{s!zC?|beOr7U%>*FH?=Exg7i;HnXuLShs{W`$shD=Q_K zQx}DpT21lFMNur@1Yj{`r{JV0CN@XX;tNuEfH4(CB;g;(J2&^|d#c?ZM zT;b*Vbr^l0DxcI|rLU;us|!HR4H_MAbGTg{UM>O(F<&J|ny-SI!vev~185aaE>-|3 z=cg69rz@l!5OWAKu)HE56^^5Tv2nHPJONC((N~OlSF<)4W8Pg?hGNY7V(M?l%*fcl zmYX|cg`l*{WC}lzC%*`_Ub0arpqzo^fR(p11q4L7aYF&$3Q;e{+{#lQFycmZ116T9 z&u|Pl8RIG?EI2)i-4HDJ32C<*!1pKkJ9NJIkt9h%g#gE|05C3x4FJQ9z5>NFYEkm? z3{ZT40>x+6rp`&V$zw^tF<{4OuTv~_rXaf~3kbYYN=dQhaQPfz%AsPgqy5?}JARowYZ zgWS$hL^y!sCd2c@(mZn+IC0MKKCz}KZ~(oL@AJ3QM4nOfw?e!78jSXUJ4jb*2ykw* zgDZx$zu;~a3SA~3YlV5w6n>^Lm800~d;wkq_HCB}<9gIjnf6Mi4TIm^uF2w+)J^*hDVVri!UeJl|FB?4dukQrX= ztt-3UL9x(BaKMSX=yD$eN$zr&&WD1BO?S>+GCCoY>CRsuNLNJwcNS=`Vxt#}?P|#7 zC4x03STbcr;mBA%3PT3`*d(qG0K>F@EEcPZVD4|=$bA%Fyhy;qOX^Voo9i{@U45s( zjc0k7VZPNWew*OOGQofyn*o6%HUo~RpBAsnTijy73MV8|V2CjY5XAUhs951ycT?xg zyCt)00P>~m=-)I`^seHBzXtf1!tQ0T!4vM0oCEA@cCp2R&YkJCRR5C{6Ff^W!AnG3 zF~N{ojV|)5+kNuU%)Q)JiY0s?QYzZO_nM5X1*Dg5GK|s%IG6XGK0xP^C5728m17LS zZ3W|4kir&rq_F57T%yfYcAf(%d@xlQn_@iIJjgy3J;3d10qLHT5l%>Z1mjcPd08aHac;3|p&zq%qUVwZ}xm^`|n~c!a29&#E6-W6dM5c8XF4aohNb5deFP)6g2_@0D_tj_!=*$)QimOd%# zoA9<&gZ%{XIY}_ArvxFZxZ51T-{v$T_bU~)JEalVC$PAtFp5Mi0bs2>&jNdE(sy29 zx(cjSEN%h-Tlt(9*jwH~p5+L$0H77*006Tl!UckN?Ii8W#+>mkz{ozyo6RPH$c}xU ztzb`_{ye++F}f&EyI)|fjnXFYfbjrp7Ylgy2EeluE*jdNAF@E|@$b)o`i?G?q##L6}x42!g(vBJmKf zgn@<7(LE+5z`sgL2>r_Sjeq%4p=Q9nN`49-Ukl(lktL2W^NL^VI|>SW&f=J+|~G$wHZbzq2mbC z`iZz~u&k8P(~39kr1(@17W;K!uH>NswaNnMs#sPJ``SxwgP>ePLUKJGvc^ph0NaUh zukul_hjuMf=xPro1npW0m@5ocp1T;O%HRI?PV$ z!ER5h4G(|2m*BLr-yegfnXB_4%$OakfoBcImUgCZg0UreU}`DH$e8RK1g$k?KSm*_ z9<+9bLS;RSZ3Ve-R;rpHwZ_9Wimly1kXpePeq$u^Wd$(wQ>eP&`jW;8JC%W2+sroUX2n65+U3x-?KK;71}K`6-t`fMa&g+ z62imo785vDzV9JSEH92uus~iW2-+&(ye$NLrIP7gKeVN^W;?$?F7QaOHIU@PUmQh}{s z1K~>Y0J2ir;HiYOh_J7etwoAJ?V&_BB@!9Pkl;fI?P@Yacvmz1Ajl-aT{%MpVKpWz z)j*jNz_WTgJ0V()rA)%Ck_+X8XcfqW0kYDBRVrq*QW2_^17r%nCbSj1kcVhZ0BmZ; z`cnLAzc0bB8V3osDwRH((5K{}hw80Vw5o?+1wp9+j8%&Ch+{L)cNu zp9k#(43xJF4@64%Qb>TO=}iDZ%K69zWo9)&cux5{kpvnwqj<XntkefY zI5xtH8l^n4B*!)b2qo7%faf08{om_s?jGd`KY;wVjB$y_xLJxwOsgOz!i&;nz zOqt4DATN!j@|ij^Auk0$Wbl?`?VI2&3jorDN*?f(?9(zrZBkKsfJYB0S+0=Dn?fwN zD8v$v@&^=mnNS>Mk>WHLDA9{>lycu&2r&~Fz?Hl|meN)E=b;E>XA`25>KU^X3AJ06HeQXYRJy!P6e_LtP5}75!`I-Cz-p2}p^CNU0 zpCS#sk1{`3QD+`x?;8XDC{+OXQ4}yD0}#&7gzlm40Qh64L69sYB;t*bHU4_2y97bt zqDhh%;f`oWP zh&bcXD&X3N2?#hh4rrlT^$>a>$SNencS61ytAcX_z)e25HUKxupfNY~H(3A-#fSbw89yLZtH;8~INx+K zG7XCr8|OjXzJP3FK%3&&W{egK1yD)z^4IZ(gM86}>YfHD1y?D>6HhANky? zdgnw^f8YGA7H_wF=MR5u)jF-syKUcl|AThz|JGOcj=1T|dnf*#Uf;{F7v5-X!plO7 ztYT}6wbj~Yl~~)Y9o9~3m$lp4W9_v{t$o&hyy>;vI$#~N4q1os;@Xd`PpqTXr`BiI zG3&T>!a8Z4vMQ|8)*0)pbX&AM*guqv&D-O=u3cec~*E_PSD zo88^+VfVCq*}d&Pc3-=noniO42iODcLH1yKh&|LEW)HVV*dy&x_Go*IooQ#;W9@PF zczc39(Vk>awzKUVdx|~P&b6o6)9o2{o;}l^WzV+r?K$>bd!9YtUSKb@7uk#LCH7Lg zz%I0x*~{$}_DXw|z1m)5ueI0N>+KEpMthUJ*)Fn+?Jf3Jdz)QiZ?|{YJMCTeZhMct z*Dkg9+57D>yWBotAG8nIhwUTw$Mz@oQTtQ-Gy9l*+&*ESv`^U;_G$Z!ebzo_pSLgA z7wt>-W&4VK)xKt5w{O^$cEaiCbaFa7=}s4?tJBTt?(}eaI=!6UP9LYQ)6dCp`a1)h zfzBXjurtIN>I`#+J0qNt&M0TJGsekuvYfHbIA^>w!I|hxawa?3PL4Chnd;;^)12wf z3@6W->CAFwJNeEWXRb5PneQxc7CMWZ#m*9EsZ-z-I?J5p&I)Ixv&vcRtZ~*l>zwt@ z24|zQ$=U1_ImONvXREW#DRH(tJDi=)E@!v1$Jy(YI{TdcPMK5g9B>Xghn&OC5$9v) z6X&S&sq>k0%sK9ya85d>oC@c(bH+LAoO8}Q7o3aECFinp#kuNSbFMo#oJuF*@96L3 z@9a`Osz291%|G2g!=LA$>7V7F?a%km@z3?o z^UwD$@GtZ)@-Ox;@h|lk_zV5Z{LB3-{44#d{Hy(I{A>N|{OkQ2{2Tq7{G0tn{$l?Y z|5pDte~Ev)e}{jkf0uu^e~*8!ztq3azu#ZxFZUntAM_vcANC*df9(Inf7Jh}|1UMLxyFJ{VZZEgD+sEze_H#4b{_X&GpgYJN><)2HEO)Fs z&K>Vga3{Kx+{tdXo8wM#r@FcBGK3?#?lO0|yTV=Ru5wqqYuvT&I(NOh!QJR?ayPq0Zn3+?-Rf?0OWf`54tJ-!%iZnn zare5V?mlVD=PbC0_x+>`Dpx57Q`o^j8*=iKw| z1^1$R$-V4eaj&}9-0SWQx6(}nItDrgItS7NT>@PL-2&YMJpw%gy#l=heFA+0{Q?<* z{(%93fq_AR!GR%xp@Ct6;eio>k%3Wx(Sb36%s^IPY+zhqd|*OgVqj8Wav(d96POa1 z8psVy3rr8p2;>E324)3j2l4}R0&@fN0`mh40t*9+0*eDn0!sr0fx^JD!1BO~z{<^R$ z$^!=i2Lp!!hXY3f9|t}O91VOL_$+WNa6E7#a58WzP!TvCI1@Mb? zxDvP;xE8n`xDlufB!V4-or0Z%>A^0+uEB1>?!g|xp21$h-oZY>zQKOMj9~xZfZ)L3 zpy1%(kl@hZu;B3Eh~UWJsNm?}m|$iwD>ybdE;v3oAviHODL6Tp9n1+%2~G{>2B!t5 z2WJHHf-{4&g0qA9!8yUX!Fj>?!3DvE!9~Hv!6m_^!Gd66a9MD9a7A!sa8+=1a7}P+ za9wbHa6@ooa8qz|uqap@+!EXx+!ibeZV&DV?hNh1HpsA zL&3wrBf*b@p9GHvKMj5sJQh42JP|w@JQb`6o(`S~o(-N0o)2CKUJPCeUJhOfUJYIg zUJu>~Rt6KHj-gJW&Y|>Bmr&PGw@~*`k5JE0uTbw$pHSaWzfeY~e`r8xU}#WiaA-(q zXlPhycxXguWN1`qbZAT{Gn5q?8yXiHADR%F7@8EC9Lf&mgroqXSi3mceqcuZ@6DLBiuhcAUrTUC_FekBs?@cEId3s zB0MrYDm*$oCY%}03Xcts3y%*^2u}=83QrDahjYSH!c)V!;c4ON;Thq)@XYY6@a%AY zcush3cwTsZctLn!cu{z9cu9C^xFB2@UKU;+UJ+gyUKL&)UK3s$UKd^;-Vojx-W1*( zE(#Ziw}iKbw}nf>+rvA;JHxxeyTg0Jd&8ySec}D#vT%9$K=@$zQ2228NciLMC*h;v zPs5*ukA;tiPlQi~PlYSOr^9E$XT#^h=ffAm7sHprm%~@WSHsuB*TXl$mElCBW2950 zb0j^|CDJw0Ez&*GBhoX{E7CjCC(<|4FOm`I9~lrC7#S2992pWB8W|QD9vKlC85tEB z9T^kJjATW|M#e?PMk=)4i$XvW`%4&cYcK=^LSWL0;51yyh zdVWpBR~#vhST_CUA4dtl5?^fbcJ@#>5{)I%rRvAb;z+$>_-5lpSF6!FXjh@77hkPJ z>!MwOHh^|H+929xXhUcV(T33$ppBqiiZ+UN3ECLi#b}ezE<#%i?LxG*(JnxnjCMZS zThPu!dn;PX(QRnwpuHV!KH59b&PH1Y?JTr+qMeDhF4{b_ccGnuwjSE)XzQb$hW2i> zxoGd%{9sld>ab>;_)vc63gT7)Kg< zouob~LSB7ww&BNd%wo)%6VV?!|Idj8eDn%z3!g~acu^W&UYHy4Q63&Z98=Lgh;|Cv zhtTGreHd*v+DFh%M*Aq*Noc=?b|TtuvpdxvQegQAEZ;H(4;`~3_G~;Q@Q*`{pMJTN z>c?P$hIkw;4eC)5m5!V6k?k-UgazZ}H%w8V7)qq~#QNk2ZC zy=TPavtsf&Hi_5C}wuv{}c>mZ3MRJG$Grq=LEYc_({RU0GmjYMR^ znvM4|HpMF#H&u0f>U$M$tHZu#+}=zV#=rr*9^Nxby(CML9! zVuYEYkIf9>MU>ic!OW12*B$CiQSlrRf%wNn46j)#CcaacfuJ=B_cD7D>YHYXeoV1o zC7ZM%aVT`W-I8jE%6Ux0gng8ZQu03~f?UO`x7pQWM8H*g2e%oRUUrGs&!gug2r4Dm zq6`j=)GT2c*|El%QBRSy9e<{2(y)jr2E5M^Z>)!%(?ksUd`RrR7r^Qm#`r}dD4I(|kUN)&fIIOkL=28d zB8?}f&0nN3#{vn@Z;!_zf;P^p5JxACKRiO~8_XFnHd@;49JB0b8C=t$uIo@YWT<#0 z5rZI;xXJkghOjM#hU46Vq#~{3Xkhf7H0Eu9{Q*ic$?XVr6HO-~D4NbhAewkO5i~>> zA_juM>wl}2Htb=om?bwDCnevQh&2YSP5T7iyvw?H(JkxZb*@%y050{cVZ>zX6O<%| z^cj7!VXTaaIAp4qn(D2l`lzYCMD&LYUJt4jhS!8AWkk%B;l;t)djh@vB4+;ZZr|#? zeIq7(ynj@C=}6HhVse33;%e`4^!ARJ#0;wH-H6^^5tAjnzqYz;&xlDG-a4zjl=L1E zlLNfQRC~{%w|m4yF|4YWqUaWhWgs@Z>R4r|O1eg3{ZKOaONZ9y-{|UKMi3}Aa=b#; zigh)Wb(yvY98&$H79U9$x|jqg0 za;HeF7kaa*dht$zq>hnTPxOwh>TT3CDG`bFKZxEojuUfGic=heXDt(%;>tTvFKB=mgZhhCn6l{EQRWBv>YS;vpExo1$&(eMA zYS>2+=iox@3dWdHrAI60ayZrrm+=x_O$dd4DIDtv&ucsaz-|2PHEgq8@X*mEg2Ukd zqwYQ6q^i#U|1*6?5B3scj2L5VF(TL%Wn+sbDzU_%G3x>gZnEs+7F$eQdhbZ@y$MSP zX-n^2dhZ||q__Y3xpQ})nH>cD`paJfulJlYpHuGX?cTXdzvqwkO23!C)as^yKi?a@ z5P!edV^45J{(!H?9>>C8@b%bZSojmZu~$19kzz?2=BhD+pR6y5!_;KA^su1w!q8 zB~c!7gd;_@hX>vSgu_8B4@7Rb|30IRiz(njo7`Y^HmkUTOxK3>H<~8@8*b;)rG1`8a74jH~3wo zs-$6KL~@q2SXJs{L&V9%5*4YB^%1)RpG#GwKGsF-cEqn$JV2ytBX%3=GFOdh%u*|t zZ(y&#Gh*apXT;;(8SzPxEyuTAk7b2e)?ryGmbF+`iDeCz)mYr7EHmorh~0v^MpY@4 zRS~-xb*-wB{gn~B$*DpHFq-l@iE^bQ9CPb5TDP(^mf-7M4@n!uvLYtvMiq1n+ena2 z;;`KDxz)MIW);-u27GQ2hh;H7x2h0b|4A~WFt&-q*I2e=i5ae!Mx2t_p{h)UOCnA& z?Ns#`>f(r9O$@tKl}@uLVppMlK$R=Q$C(6!oa8vUi*vu}e^osVXDhtcYEV zdfZjxOJxqnS@J(-_u#~F0^fEP!A^>0CYDngtE6B?#3`%Os%}P|9&yU&jH)suO^Z0W zI;$$3Z)!wx7(W?F+9=cQ6x5X-?~;gb3FmG4-@hahkaLQ25>a$n>Siuaj*ldjHN-Ll zOHHv%$5Kly)3DSQ%Tz3N#4^Qcs%50()Yb2siv~d{^m^hj8B2XEZcCLmSrD~5lMc0?iG!cghSej~h84brr zoSZd_SI0%1Y&Lh*n1(0&ME^t%G-npoGlFLZhn!w1E1o#yunbE}v5dpgN-SSFNupXw zV`~+37bk`Jg*c4G(gurLMzV4l6LCtet*X*$Mn~L&iZ1@zN#N1WWsVo+oRUmxFAk#| z2O{J89aK0}$Z1D*m7bPFP~J?w-hx512xI5pDQ4VKhJEF*}h ztN0-j{K?=jJmQo{H&vNMhDDsx>8>ITd1ypRDyfHx%p&;_r%tOW&f{NUbxv4dyso{u{YiKk@e^ zmj13kd`amKiZ~_ZO^Qw!1H{`Pr;xQwDaxdQ;xG`)p!o0uB6c|Hm#WIB+dpE5p$=A6 z^3X40hoTN~Ri|G&DecE0y!7YPCni$=4`Vr9XC$*a7$*t*Z3$ZV}rbb&RT#+pZDY4|S}n^H94) zoLqdRDu*B?I!A0D{Ekyq^42M0d!vq5RdUfWVtYAN5nZ57z}0qigdIig9S=zp#i0Y1 zNg7`A&^}^&;GJJLCvLWq3h*l%E82mq>DxtYcVd{VG01YFZNzp%ouaCgLYs)~iaJ$Q zsfjNlwhJoFyRgs5xYRmgJEKllRdUuUVmqPEP*wc4j7av9W~xg6Y7ud=HcLgxTJwl) zkJs6%vKA@PEMnWC&QVon(xwsH7Im(wQfW;hwhih$RVCiW5&H$|d{xD7qlj(olsm16 zfoB1(wvi*~;Eso+h2qc<%OVXgDQFO}Em0S%DwSS8Vq2gtQB^ugy@+k@L>;a4r4nU5 zM{xGSPPZ*wl}qriT@Oji#8MY!xkf0hzD~q8MO~q)9Anjv*e0keUDfG}a=PiS&5gAt z5hISPB*t2W>lLo-Y%@JFdal;kB!g~jYuo@yYsFHNDAuVz$#RW|Q#|Wcm9*qVYy3T-eq}-KeTm(Alt*M$#r#C68yqPR=*0D(&fX*w(@C7F8v!r^2>2>Q+@H-jiX; zY0@@TCEgQZCl}jQl@-nLu&sgL9jZ#NI2N{fs5@P?XnW>A#!bw;h!MwKINGCO)}tC$ zu5%=8&!U!PW;l)cB<3khmc;>kGAzpiN`#iTTf!f5gu_KcfcV@a4hOO9)rh6Q4}|Rr z)P1T-X7`8fan${)ir;-Eo-{SX>s}{8*@9wY> zhr>A7ZzNg`C$+FEEcr+}qNPc01qHYe`-Kea!19lgdr!aS7vgQuh9av7e{m2ylJZ*= zwyRK^s47Wb7`7|v0ER_;!UQ6Rbv%-$rN>!OuXNK(}Lbp~`QZ*xN7ovWl zstkhD!*&5`8&zepo))(AQQN92RWUVe=b^TXSEq#ST-5fe?#A!ru$_b2K~-sm1z|fI zwWF#sBTWk1S*V>09?PSyf=?9aXYVLBLYVJiKx1mTe zj|z+5q~7sSjSSm~#1OlSkQvbDDG19P*hhTJ&a^0eUlco%i28|T1eX39qYOX8!*)C> z`+|Vvh|n}L@;*TP4|4=PbE7Ph28zQ_EQ2&6X+!y8I~MgzRi(WT3EMGFBn$||I#>b^ zaRgnb;2~*ftxsj z_7*%OEf9ys61^m(6_$k>ku<7?VNsbp7MjG#V-bGcF+q-98-#63Vp#0PAhR3&Rc5w^ zVdIg=m&oNBU|A}b`dGepJ>yZTtX^0$pR_Dqts8c7zFbx5P<6t#DSlU|Dg#sPuw*o8 zrK(aMwZcv=SE(v~Yldwj{H|72);2Z5wjt^oRb~9o3p)v4tE!~;T*%4AI#ng!vmsm0 zEo^CG>v6SbLo#^j?GZdAZ4ieuA(reKUYgkHkgbFBCRL@0oeJ67sGC)l=6o__YoT&8 zCtzz};r>m)=3&{Q{-gwsg&cLOsxl)S4cT*Cf19cj=aG;kH)*@7(iFZ8IceRYs#N;n zkUfpxovO+Jb|_>|q3%*uX263XdlK~7$R0=K-c7(B#j;18rQr95 z9Cfd%vZL4&vPbaCZJU5SjAfrXKgvy=kR$F_Q7*qLWDnu>fU45Cc82Uh)F+5&KjuMo zmBz3=SeBU2_ZWJwY{oRC*wnQIx4rB0+O(# z4(cpRg|9-6+EG=>-q?_n)=sL5-!UOOnXK^_F3xit*crd>)Ft+Fe!2&hU^OkJ>|3iFa7YjzjGkuMQ2_uTXobD$P7U zWXGcRR#oC160&2QY9ss9V;@}Y5J!kv`4X(JI1I+ZLsJ1e5)1dG0(JzJej1}x$H0)I z_E%MQbOS<=i9R9QnHWZC4BUk-(K}>2p^jFS_b->|6|x;s z$EYe->lv~goYYdu)azJWT|w_-_axX?;?N$;I1SI*utfKeZHLN@sDP81@#?%2=dK~! z2ImQ?O0v6z>=&pLRh2sE9I~xZC#gz-mFN_*txyY8mCJSv*_No2Ro#Z#A!J)PMc3&( zMK=Y%ZqZ3`v=7PY){v-+;?+hWTa%n6ZswbW zWHY~5e9LCODEtx>36iu_EH$uv?Zy~A=)yOTDf(*hQ>5sfa@J%Xr%aa>23RhZJVLH; zLlQ=6q(1A^Acq4|VUpRE>MZS~E=yCKSH-J!Segc<#`cJZsVawO4Me(N(5^( z0x8*AtXEOjs>&Q!q9*HA)OD&#dDmdQin?A^X_R>(dkl4hsxqRS3)-Wo8&#DwoDJF| zsGC%kx;YcH-=c0-Rbn_Dw1-i*s4B&9DrgU(ZdFyv?qtv&MBS#Uw1g8udjORia{(ub z+tpbTek^GB;k-jt8HkPs?OxQKs!A~(3EDlVK4KzKl=p;$-dgk?9_rJ%W$QV{PuJwX z^CZVEBBVCtfyS+RnQvUxiG6qBm)%@yPvMtu__CKT(n<*|#ds)accJc6bsy@%pxueO zUsdT)2ZDA7>H$@yg7*jQcGQEaN+aJFwA)Y*smgN(CH4mGR@B3)a;LGxo}k@=`mL(c zM0N-5X4EM%kxCM$ibYbzPXRbJ$8tmiNPX@I+V!YMRh63C9<=LFkEtq^uq|lUqH;qm z;9UE-I!jbrf_62|C*sx3LAwf-+iU^55z9$+mTYVc+7+m$RF$YU1nqLv)2d3Htq5zeYW)s-$&o&@M$ir>a!ZnxI{RninXlPVu`sXcwc_P*tX(RYAK5wWg}l zXjca9LeyHSN_tlW?E=)t$RjDFd0w3`9ME*4(`9Xf+WGj39jGO@b;MyFmR}K#B)+a* zM7rtHpq+zSAZsH@Z#{LE{<=75XQ9?tRaPO3f_5e<4j#gEo>J+rCPi*;wG}3i>RY1p7)HnqwKK;iXvG z1#L6b@v2Hv+6HY?)CsCe<+cghCa4otmE!&)Xd9zWQdQ1N8abI^SU-E7hERZCw+!Vr zV8dt@C%ZAkoKQCk8jqC86r5~BEK|kO0L!#Q&kgY`MK!(9&kV8DN12)ExdEPA;xwz! z&up>OL&=kAS8_kc4MpL~`B9x{naovH4j5`j%VeIaa&S>AS|;;Vm4l0#LEDIU7pN*R z)Cf8`Td1m(UtZA3<|0+a@40}JpT(-m$>Z68lkg>~%E84M*5q7msj6}ua5`Y?pnk2Y z_&pV{wNaO;DrqIzlmX!$tj+^8#6m3WVF=#9#gk^y@*z*az= zB|Ar=>S|Rbs&51K41U+BDv3GFBPFP7Rh6tC;sF!Xb*joa%t4+uL0zw^B<4WCo*QMalp$HCvQ7)RZv zs>HA>U=N{gS5HC7^)u@Jcy$AdY19L%@-W?YLXs>&JH3fAAKJm?v)>#>|rXK6aiqUuRiowM$MU5DROs!Fvj4LAuu zt*Ud@9k6Tg%afb|y9&!0b(ZTdimGQ-m8cd5>`MHeQ&mn57X<7I)I44$;BLF51KCd?bIuRgv8eoPjOV(sv{7fNmBCT9t*TPNUk2Zr7C+y)vobs56-0V+f7wTYj@VUsNGeS5wIH%U7+?* zRW92#VEdu=R8^KYT>`c*DnIZF*xp!rsk2mar>NRHUhNpLz3|&dRmp9KfbEIe*HxV% zQhov9>%gm_j5zhf$+pMRKi1Dt@zb6cNSPiu4G=%=unctlu)>k#w++~CsDo6M0%*gD zGwPSBN~*tLVT(FgRaxP*4%p79LsXSix8mUoRDKS|5;h=v{Wa(58u-wN(`Mr%EM>Ue@2Im?mHck=+kN<*qpC!;)o=Hr&Q(>~#umTbgE~)D$=znZ-Hke5 zRf%Df-+qI-KvnU((QkL5E{s<<`0Y;AMXE|!uJ_v=sEbvV4!F*5x1%mmRr0phZ?~Z? zRaF}68o%9&`n9T3bF2M!3+ggerRA*RcburpRh9Iv^xI9SD^!(~t?=88s4HF783mog zpcTBPPyQQmUWKz=j%BrmmU(0uKh;ECqpIZKYo6*wU8|~$Tuc3SEh@jC3fR?H)~T~p z-eSL_u2)q8E%Mt{_}vh%F7(@#s2f$43@-576{wq3mDy#!-%0r9cy*rNF2nB@RVCqb z{q}3rt*T1AbNqHG>NZuy?`*$ag1TK*=M>a$XQA$hSINapR9>&aVhzhqb(Zr+58*l70Z&Roea^<`x8g7fpZxW(#L0pyMQyC}n(9942DnXJ{-kvG6lA)|FWJD6cZ-=3tR#i@czVh3lsAp7_yE9|`HXoJWbFp~Da#o$?9Bj1T4o00U&Lgp$ zi+3LBw}VjmbrtJHEc|vV;9NT|RFqpe1{~(M{c*0LsvOu3<)ukZDgH9?5U(a)V+t|f zZ~GEKEsa1<0f+c)AJp3M>R`X^jao-l=?-7|Z7#4dFb)et&K&>CI z4)ELVs0~z=)7Jie+YPm$s&eYw&u_b;Hd0lJp|9U|L2az6RCXV~?TpGhA6QXh;hhgG zBC#}4e^OjM{k8*YQ&lB&55H}X+Dui+ZFj$I=M?R=iACESuQ5g2&2QTh0WX(g!HDHL zOi51*jZxCx*>78;wp3NF-ih1ssI63$W5|wv+Y+_4suDv7ziol~g{l%md%tat+D27r zckOr$i9-9~JE|(TJX){>L+zxhoX7mZj(;KitL+z=m1gh`1=X@NE zN%2TRda1MYrMfKFaPFoyb~EZYRVAu#e0CFRD~U={HC~;ilkN1` z4X6`Tl~%OFXV;@nR8{h|-DlUKPEu9scAL+xMJ-TO>R_wSu0iFO`5X>nnXJxofz3X< z3U!LAlGaT=yAqWbPVqxEEK}p1H~8#w)M=_ps@D7LGSu!8ND|UbEOPDX>Q7qc8lPQ) zIzv?%_gDMuV$_+cN>|`zs!9Q`^x1`|vsINET;a0|Q0J&B<+|Kw=cCS5RpMRd zv-42rsVX`6+GppY&R12+b*azJL0zD#_+8?&vr!kutBZYh7V08ZrFSgy*_o(|Rh4pB z=(96Wm&B_Je0DnOQdK2}`93=h^=nlnhIu|a6?Iv>I@f2Xpe|Qc+QA&3os7CdRjK~j zK3jmgQdRLg%V#H{u2NO}&h*)dsHp+>MmOdWmivmUhybBwrg`&(7MHMWWA+Mct^X)bC`U9fP__ zRTuwZC;99sRDPk)k`c=mb(W|m`0NPOwsL(*2)}3Nh!G1vOXpM(%T^5_ zwKCRc^HKSIItxQA+tgX&8||}$QMaoq1KlW}{StMDs*<#kK063?r>e4W8sW18QFq0w z!+mxD>Nl!N;~nO+{ZV(TD$BH?KHCpV)*k^mA?o(9) zed)8kQ1`1UJ#>)I_C!6Psw8Hh&-OsAB^QuX@fIph6|o#tf71T?`D|BIUOW}BeX#JZ zDGm~`98!N0UvHo7gnC$2S(x|o*^a2+sw(3^PoM38dL&-$;j`^gkE$xg-rZ;0p&nCJ z^3=^|+oB#4kT5)K#IdZEGN~U?E70plXps0 zIXP$^P2NTcB-iHUOq};&Ij#QW9J5I@5oc7D&3a>>{Q|$Y5~daAS#_1T8~PlTR}BVi z3!KlXvmD6O_c>}_xM({fd+&Na+Z?|&RFwODe6}I#&E%y%W_@*)Glz3t zM{S_0T=lHi*28Zj>8FyY#$u_BrJ?$hsyXF#)JCd0$AMm3O9H7X2QVkRwk9es5AZo2n{he#C3f;#rUb_pmgQ^n42Cv<&~H&w;&DzDv)+Feyi!%DB+gxW(@=>sdgb|Y#}Ri*7M_u37p zy;PN2S?0CtQG2T@F?{W{>rnfsDpy(1p!fPj>PE%C|{^4Fb9(B5^lEGnK zI}UY*s?s`#@`5hZnW{>>`CdB~b(X4fzCXlk$Ds1|JZ=JGnXS%JR$qD@_2;;bz;%wg zO1mBCb=0}4N}>jM?Qs0om*zSY%RF_KNvfaMQRk~F7wYS^`S@L+s#I$quN{KAP*w5U zo444bejyhagk_OBOHuXoI_hForLpz!+JX4(Ac6X0;SFo7$*?R@f0FvHUPoQ3suXD# zURI9ZuT>SloxQdXYHumLURai?v$TbdUPoQ7s-(Vy*Y?Ekig>lX*Y-eNsj9@#&TG4) zu2NNEXzR7zP*=yRZM?QCY9~odXDn;fS@Pf7>!=;Yxg*YND#h8@YrjC%~5x%Dt_yFZ8Owes!EC1@!F=S z->53nQ*Ezpg1TE(NpCH$ZS0k8VVmRXeIM>8-NS&qoo#01D zsE1XRiayRSkWjx>Rjzc5Ul*YsQB`6%%DbmM?DFLTXRz?fcb);na#a1vP5 z#&gJHPe~wE#qUAh^o-g-;yjM!ggQ%}_Ve0j)RU@8qWAF*Xw*}xN?q;c4OpnWralxKdDA6pMl7||SrW6Ew=JXAj#oGF!YkBPl7pRCc+Vq` z?O~~-{-lAg_c&_Zcy*n}ZpSb0E$87pES<%&1xvknf2%!?+E<)6;oL_o8?kf{%LXj% z#j+kteGMt8UdG$1P#dT!F9GZ>r93x?+DKK2VF~XkMs2LBQ7G0S_u=CR5{ZKkTM!RE5$Lv60A zOm%Zu|Dm=}RVs2ei$Tlg(=?Lug-5n<$lD-g! z8CcrHho8<1fl=GWtJC-;4r)79rLRuqXE>g%|vyc2HHyce2OMLG7rjoKujq z0@O~b%6S4gn}pg~Rk>G1&L*OEQB_VEW^ks4+ErCKdm$I&QM;)se#yl+)a}x=reNu= z&T;_~J{Glys&ar%!pETUhGcH5V(F>QatCS>uXRQJ8LpC!Ug|3Oo4|{dPQJFdZT!4 zDr#4`z9gidScYR6p#FGKZHeLhEhNh*N_cLMV);s)oga$uH$YJN(~POHMoS zM?Fw^`8nrhSn7*KE;nBNN%^ZW zDlvS)TZ&L8t13;THNPH4ouaD5+ln7>piWg)x>QSk&4JoX5-v%crp}V^<}6H5r>iPa zHDh6dIzv^do~9g|IivJ_iKFyPycUhp+yG_iLIkrk0y#2n%u7O1XR9hXZ^SwVb&jf% zu!gK-PqNCqUSO~fLpo2voj7pZkU_TRKrag|FC7mHkNo_do^)biL*$(guH z{PWdS%DaZgeoSLgQHndyV?Sb>qoNei=k`PPHmXSv_>axy{)%dnyMNmpmXNB+J&ez6 zHZzyxjHE18H#s5x)PBI&FK#5{Yju+{`PgQ%jZsbV^O4P<*NT6xy*%D6*QT?TQBC5= zvHxTvqneCd+4di7V^ouLWZ5(}F{;U+{egX-or`KxV%2R`dbboO=~%07GEQdLRBo%N zCjP70%Je7Iq>R#SB~Dl+4$`qf-K4DkVN=+)s3!5I+4m?v@z1q4shgy`s{K1#7u6*G zD)wDAE~-g6q}so+ZBb3iva)?gX7keWEYmieqF)&%n9Jq3sc=pwSKFh`Njt=Rn~jRb zB(Ybt71*YzCOJ>Bf0e)J7qH3fRn$ouQ?mUFI~CO=F@Lvja&JU6DU5gR8*D>Vlfw9$ zeVtAr4S;0qQ#XnCZTn|tQ`Mw^D%kRDL{yVO@~`$)b|0$A_206uu;oxq2J^qzm)UTr zCUfPR_D^g#;h%dy?i!1ANz zKiH?)W2h$6!wdE)b{MM3Xz{!)%gVvk+@nl6xqQlaUSNxH8SMoRHNvlgyR153r-&qTk7m zyHqAi%|yOm{xD=fQu#X!64qQJl9u_9{jF5v!->_{0*^7(_@KR)mAnR)RFtvzu#Q(v zN~E;CTmCR)KoVq<9!QM0b$q;~?49!09|QJxtnD=_DWKokJ18`1$-iZ}AMf^CdpnDL z)g&+X+Fvo;t0t9pkG+kBzG~8I@3tjb=Bp;xy35|mB40HLd#C*+l_A$B9i7xovU!L7 z1q*%E#Q(4D%`Ed(lQi9Kf6g*iHSzZ=dlO51)ugfBW`D-IUNs3@(%#6bUNxB(Z?!kD zlvhm}>o4u~EZ|j>u(#Oj=+&ypsPPMXEo*kwO21IzW_t|_c9kUP&+XN;OUX7#dI*D5 z^iwaAgB$G?EZJ3)zIuZ#!SY-+Db?$(WlgS{guTvQ&Wc<$$-%YuGM3@0Nte0CM&vJz z2JBU=#nnl?Uu8q`7eND(iXrMG^>T#`$e$Sv$c6LONfKkNkJ(){DfY`PCpp7Zqew2Z zEM2vbWPM^j%1X;g&CE#u#AKzW zRCX*?(lS!g5wbr@%c=B!a>dNbpO}hi8I{vAswSsoWu<&#a#BCe$<0bluAEvu=l$eL zxfN53Ih;p|`Ym0#n9l?uJ0~+MrD|$&kwdkVoaE|Rsa4WGHXo)|Qfn5eKoKLE)bS-f zvr)w9w*H0ddyWaj3W zv<&&I29+}LZ&I?V=2lD1$VpE9n3QB^OWf&cI8;x`N~spL#yC~VtX3^0s#c^3Q}F1- zlk8ZtQqwYWQnQFCCn}JjoU}?&d*x3uQmPexAS@$dj6m5ZN3$q-B9jsYLR!@fr#e(j%czv)ILCOboSLXr$;^uJk)BDBXe87~ZdOK& zP$f4*>LoorMyp6a`De^`x0h%v6n9Qq21Qvl#@B}_S!pR1$z5*s%G7q8TQtVBDly*O zI8tMzkKUKU(aRLYs8Y<8r7$ydGb+af$oZr?;j5=sN~@BVnw3oFexFvJoK{&1wOVSm ziipuKnboED$QY0;fhxN)9ZPb7@5-rFQgYLC7(h}ovT1kHA96F&+-9C8HYsSwLL*L3 ztK_&Pr+k!xg;0DZXTP6TB_}y6t?K(lU(!>nNS~_o&&(=SvQu+RI?$G@Vr1uJ%3YHIYQwp1LmGn%pmnrR9s;W&IW>jUkNKH>Bd5kNj3W=BgmF~2iY?GUj zPWR?2Ra3GmJJ#wnH&ZFy`Ao^C08`UbD=|c6n~dCQ$sc8A{j+LTW^VOtlk1pFX3 zjWiaGkSS6H&iIq%lx4Q5mQpDzGdU}l*bT#IYDVR3lafx0PH{{=Gjh|@tLJ1z#|#-( z4C97g8Qrbhn4XYXJvA$ZWSNx8mD6(4K1@w6QmRo?X;KH&Q>J&Ta-aQvN@c7sq-Iu2Ws-V5`t{k&YAI%Jl*fnW|SOl?vi$so|cg+M&?J=O_h(G$}~mQikw-U z&QUonw_0`cK5ezSNy*L0G*vVCaH`T&&LnTi(Xqp+(X5QZ!jWN*DIzU9Geh!U4TG;a zRFK#*v!j;6G%{jGXNJsZmvZJa$7^mzO4cValaEYR)rv{9OJ_{1M7NKfs7$n<>GVWO zn7Y&7&yJ0d`Ca1sn39X}>8kN!_WMjq$(7QwD&?j*l^GL&vA=3=dP-a*MFpQ-ql;Uqcd{S>TKnL}`jeoJK_ zVN$DRDpt*6R?c8#awllDW;<3ACF7Q160a6rdYF%@W~Vy?n5meVneGf7CL=A~B&TL& zNk5~%(Z18&;nP{mv1+T7ZmOndR;0k0GMGPTFplW<4#)0H7vv}0O5=hTb$%y^ z6ItqqDe30Jw5%M4gP2SwGct-0n{`)v-&w%ruwbH0@Izd*Zdu5wCVrgpJHc1HDy2~5 zMTXZb<}pSx`DCrfppfjW65Srk=$HLZQ$07EWiHc>ai(I*H>E1sWNmA*t7T?l$Yg0M zev*@#O-E0uT(WH0lIf`#RpZ5bOUjhs_$v8ik%ubGqq54(tx9apikhlpUCrnrpNz_U zQjVX{b?BOfYX_4neW`HWEmclwR7t5MqSMYYtC;MxPg60ZrZ5Uuw&K7V%e*chX;m23 zqh6S_bzn=DutX$jE^$lFDVcG1$vZRdEGetV)XLcBLbvl?7=UNg}>#nIEPWwyes`gABb0sTt17M}-WTn`G#BoSDSM7xR0n z43aXc8+uMwT1Bx%=N&RZ%{hA&6qW_4&U&3rWGXT5rJCf*X-r5J)2gx>AnopQm@=US zRG0BI)mf1^t1nWN&QQUEi+Mda+x_a=ovGHfyUU#9l=RGu)L74kN+n!$xF89XTypjI zvzVowsoH!bi(hHS=~6dEvw`y^x(_PcK}Fr&El-^2jCIjTwlW!tZn&b}b1TxEq+dHT zhD>0lVk$*PA#yo35M)VK7S2A!`RWd2$@I?RxPtK zOBgq6=0j)7;=5EJ6EP(qpA2@aqGTf_Ex>IEPH{QkDZgr|tnL_{oIRhj^keVG=$oBV zg;r3hl8l*LD%H@kva%RgX$jexxmlH{@`~vx8UM^?xkx#X=ctWoLw0DaEJSxQNw1+~ z+!E9+Ymp?IRgzHI(1t3p?xPu3ro*MNG&4m_DY~-~DcUxZ#mc<@Nm^<;7RK4E%(Ti* z1z;2{AXqw|XIomiu#?2@RVz!j=|z=kS1h$E(Zfu1ZTUVkXk~hP)eH>j2}MaSqt?QG zbBt8DZthuACxvi{u!aQzrA2n%@n%oB-Hfd0? z3Lk}YQQRyOozWkX5&XfA9~7fZ)F_Q{fe;VM0mg$S_u&Uk8dL!%iZanC9HaEdWlX|k z7rkJa3&mYV;&x(q@Z-|a_#C4&-->V3n8T{G04ZG*U(8G!y;SM%N`r%b^bAGT#LJE?<%?nii-O@MMtutz2K>mrOf^BeEi9$AHAFSdH?yG ziit&E#Ucki?1d;|O85R?oW^Aco0 zCVT)(VVTP|%M!j%)$HyzJ()j(#3?0xgLJ*@@q`t zE|+qce}(tpA5b0YK?7(C-C#EOBgQ-iWnIc+3V($Z_yG75m!=LhhGx(lT0uV;0QoS? zWfbOEnBcMiQ&1mE4&z{gO9AE#@LWMXKxvn9 zn9oBEs0p=Q>S8v8#?TXbyY$7(hhZ)gFogn`1~XjNVr~F)Wt4K5FTjhC4)viin5!sr zc-o~r=9};~ybCEVshCwD1FAzV)PSZg-7u%aOqcnX!Xh{cr{NFRFb2WPP#*pQe|32q z^Idok>O(_l0?i>GhQUY}0~4XZWeVnWm<7vWC0una^#|9(&){vygJ#eTj=*s^1D@+B zj~f^h;d7_~9iSV01N-1Om>Z3`8g7LLpd9=e-h*_=fa;J3!(oNXT1=tj&y4vP@}M6K zaLLC!0_G-TehKBF8dQfI$b*5953|Ai+?X4nB)kEAT>>}Lui-iP6V!rkFc^lwSFjDt zFO0bzUWQlUZTL6jL49ZrU%>>J1iN4l?1RH_1dhT<7jp~#!2FW(zLoNZTc9L72Y-N< zp**|=6iB* zOrbe+0xv57A>?uy=CyFW%g-=xfnU4)22;4pjO&?vlVv3 zJ~#x2!Q5xe9dM@$ix*kIm{L#`GF|d8+dwzy1N~qyc>~X*dUg2blNa0cZ-{U=kdFb6_6i`^%WGFs}6C z`fvtJZ^qR=^hvlC?ty!u9Av=f&>6bHez>tO{@_2)+f+Kx2Xsfh*u@ zxB*JSZ{RNY9h8E%;ct)z)nPN3LCh;FXh$#u=E5m3Cm4TD;ty7VImLD0TDTEzak&-q zF1QCChDYH^c*><5CNH8f&%m?rJPd`U@a}12Dnr>bj0?~VTEa{?04Lysvr)1!g^yf5 z!4&@G@^4Jxb2tsRonzhxp0PG>Llx)@-C!b2ftfG|7Qzx(0jpsxP_pK7C;`8LyWnwn z63W8U@G_K#cOef>LOGAe&@MSOmuBF}K2f@Dh}VT*!mY&<&=-ELaGOVHp@d z?vM{lVI`ab6Y!Wjp%het>hLLi1`VMxw1n311+<0k&=ZEja2N~YU_6+h$2`oR4=M+5 z!h28^@}LgXgM1hUUx5jGOaQ_zmtj5xkHDkwq|4KoZ^C==_9*a(NFp@AuuI)5(VfU1aI<~ zh>OL%7OsaI;Ae0@JnfQ%DRhIrFaQ?8CYLRkg86xr%P~vC<1Xbfg}*@q=wWMMV~a|`K(Fht;TC8y_eJXpa7=8 zYFG;=;WS*gf_ULUco<%R@{j@5p*}Q(elP&0z%-Z(W&>#fv&mzA3y(lqc*UjpW{>$2 z3Sc*E+~G0XVJGZ{y|51sz*#Umi5tu=>L32-V)ik1K>%)r+u&F5YnMAQg}b3NJP41# zV=hl%3cq)G0aJL<<&T)c%kV1v8D4`oT;9SID!9CZDZJ~Fj47l*MX2mj74sjE4q1=` zAHgT^8T`j353>O@f{xG~dO~mL4+CKwu$wR&`f$+K*J~af?KS1#mN8ya61p$&nta%} z8~5YrCozrBymT#xdG0@!*yb@vb{UN+;LT)0J(pU3?9hTUy$LYMWisXzm18jvIuoJ$4y>I|dz}2BBr7&NDK9COuFdKHmVL0P*Lzt~B+zhwF z9dIYy4fjC>cn8`+SC|8vU<>#ntli*AcnV&HKf_y45h_6y$b=eD3&y)l#GD2*VHV7V z`LM!eGv*f94*TJ(i{~<~3s1T{h537U0sa7ggqPvZE>$o;fLxavn6+TM%S6oSFcW6O zT$m4=VGC@B{csY_f#-6r4^O&0h50PJ0Dpi#!pra`yag4Z5>$aqsOd5ha|+CWSuh9Y z!wQ$}nESz4mX`3O%Tt)o!t?M4cnMyHH{mZ(5h_6y$b=eD3&y)l#GD2*U>3}Q`LGO@ z!)Dk5+hISjur@w;0-l7Y;8}Pc{s1q*%kY*<8Xkn#;C0A?Y#0GcVV%oH%w2FfXHg~KO1KI7yOiYY>0T%WPr&o=DlCH4 za3kkXH^ZCocX$szgU_J>G>7((4-;S#EC6#e?GYY?XQ4b)fPX?Zc0T#g$_!@S?UYBn%g=2663T~kv!qX**1Kx01gt-1+6!tz9WdPr#G#6g&$r zz#rg`@G`vRQW3KfRDpD;4mt49b)*Z*Lk0M|OFrgQSOlwJ$n_pG62?FQtc7(@>IT-r zP#!A4Ko|`LFdJ^Uk^LK#g2&*u?B5=Tjj#(!vG;li9)U;U33v+1x%?jU87L1GU@@$K z)vyt^x_H=&T?S>~F?a%=f)`x=jQI{Ug!XX%FQ^-M6rP6iPyt#(U+52`-~skw55waw zPhysZr{Otx!KFNA1!xFOp*ggGR?rr@L4P>RUhXKo_YaRrg94Zh2jE*M#h&Y7C=V6j z)yyb=#;ga;pe1Z|Ie>W(I*(`X17;y-Qcwz>ht$Pf2dY69{0nMA9cTmt;7j=Z650Yq4?{V45eBnI z5%$0dSj1jrIXufg~YLjeE!N*^?J<5o`3N9FHaVq zA9)^Nog=H7I+z)rd7dKQt$q|C2e1)}f}1JpWeWoZKppJ@Oi(P!Dl%$i_avpjn991S~z{92cI8%Cej0>hb(b>#2!rPA!jh9 zXSBS;o-xG}+cT!|O?L{H)-$fVNbg?hr2Ty5|Ks=Si>2LsXWRKHr2WEeri7FB|IIeD z;V0c@E?n+c{G`kM!fC(ie>m-)pLE(UyaL+)lWy-9PW#TEblNZ6-k3{7?tBPG| z#eeNe>xx}z&42Amn~Gg&!+-5caw>9F%pJ)s|D`MWd3e;rX|lGx-JCd9;CI(4W{2lS z^S0+5&)+v={2u0dKY*W@tNn5HO>T2NoJACp4pyC zm~!_^$GAz1c3GbBo;jYnUcdR&Q;R!cV?7}w=NJ`?-067RyufFQd6CbG=8xP3_#3m5 z#*pN_#+eIbw$iyOaUO^rSzj$Gp_jeiXC{e_B)?RnEi`K@)X8fQz=7fKjx_!+g^ZACEPJ4=-^$&V3t$u^%TtZwk zip6#265}ddAMGxdyB)lwK-Na_ZSDN)qM$jIke=Da(sSYx)8jMuQZ}*We7E<~Q{pq% z77Km#_X_<;vCt2Fuh2iF41MPEV%Ls*uWR32Ec8v^BlK0@dnAmGfhkG^p(Xzm-t?x?=KemzV8*{`25t!S>OAv-tUYvpe6cv{UqT!{o}l)Uj+B^d?`7_gXQ!h( z-#gf!KOVC~ui)&_qr3CQP98MX4KI1c^m?(7f4=09uNDjW@+F6Sr&!1emmKn~VjU51j;538Y`U1Prkm+*dYGP^gY-6i zOkdN_^ykU0=7f9AwB+**egZFRrBexQC&#nC`;WVr!=a+BhX}trL@$|3Q9fAp3*jxt9|w z$wT3)EH(~ru{cg#Bn~Zy_*r9z=c;1Y){-c^zRyT2{h{@Kos;5Y3FUY2BIOrdA;;!D zQY`OhE}HjpjD@W|9T*E`l+%)L=e^>*V`1Srq0c1FbeB?Ii8K49gu0gW#gCU)doR{T zWtCk#)ZLd5DwGf^a0#KVObAut5<)$a5bB{z2$i@FzLYY&JmFfAOSqOVA(ZD5LfxJa z>b6S=mAGcSlzb)bNG>JRtqCc-`Pp4UP`FMHSVQ^N?es+N~kgkW%$4)l;I=AO5>qRDviWF{iUSv z&V&@+aS18BKOxk8mk{dagitqKLa4-j;HBj&zD3<}NoBY@VGg|bTEu4(_j?ylVd2U_ z-YNE)>B8q5=HX(q=LvqB@Lem9fb%A@*Ni;v{DyfbA!G^jt|!IwxT$RT;{&FudEca& zf0%!obW@F4w)p+JUerU>|7*l{zA*9EyQ|ps`gkvVy~Guw%$|k2jq|Mz3(wzT%jbb& zS3Prq^7-yn)fF*inmDQyt_owX`(Ux_9=yPHy)kQ;y{zD*RIhRNQkPP$_a$8ELgiX` z%F>U1Rs0nDyIYRWJtft(*2Px2=Q}sMa4Gss;uvz~AlQ8a9xZpKn%Sl$O z7akeTcT#w<6eZ487YmWN^0`=uw-R#w<^^-@Gl}boi(Mn}MB`%h{dz*G{(O;CCGK-B zma4=R>4ihY*0;>#7q0JE-vch{n^C4%FZIw%wS6a!z%o7+?-Li^iTX_98sTEsNSw1T z79w$tda)3Rd(Df5NL*!JI7HA4rgX12`F#Gzy;E9vcT~ssLEZ>wq+ZT9Z|6i)o*4U- z6U@TdWB7SykIQ3fNXO9k_?2Mv1oM^eJi)xISjgx(iKM0QIh4`fVA0NAcJm{>;kYo- zbCt2==y5ZF&vY}1&uZpYuGuZ-glnAlGN+{$U#(m$jr9qq?Js(|8olOJu5+E4$>-0^ zY(8&^N%eGZfO7shufx98l;kf%1i6EKt+|1_);II&?btps_aY}3v3}>%_oKb7crK#r zw8R^tv8dJNAy_TmZ>zaC|zG+|@nntFvX=0k1W~Mo*h~CN9HkE|$_`F4* zDwBHknZy(83;9l*!!P7JagFfZzAsioHNT^V5@(t3zD8`B%cyywGEY3G{_c1S*W*j+ z7q6LRe7<4cE4Era;|bFi0ko<5{`lJGzUL*C z5RxPziV~9KCutz5ke?(;k|cyEG>9~pDM~4!L4#%@&6-PTP^n+_FR7&RYyN3c|Ia?d zy=U)p@4M)|+kHCkyze<@4SVgi*V*gL_v~=F-d4F^(v-`5-oG`zMf+%htfVb`SBU;I zM71mj~!eEzu6&sc6C8B)whzMd|c+HlzEybZ2$x?WVih z%%mAT{$$c@V701###X)WM(dSGv_4E5t>_t5CJ&lh9yHD9!AGtKKSw-RmBxbtS?y|1 zj%a_DMw{zmw5zg}gFWIJyoeq-$0Dz8`CB!EzX^$+jb(~K^h_y}W)-XUN*Qa9-jB;< zGkQ**Ub8^Ha%0+xvotef)}@JQfqdg?ua9hj@6u=|Bzgvv-ivhi|1)X+ga_fR`a{O8 z8aK3GjA$IUk^!{-;vXldA{eUGJnqIh|Ogzh!LUBLRB?}x4L5s?;&=WQdrtt_+f zc8a>2`Czpd-cD9~CG;B=JwyBNu)QV`d%^jb9`_;r`xv}2&-u&=d=V#8&Fwa#=BAOF z%Sm(EP+wXwA1*DKpUKzi9Jzz{To<#vQ{5Fh6XE(6jgv#|YGrNBA{j^^m-WfnUO4R2g;d*q8I>cazy1LlD za!4cw*`j}$ev33q^lM~@enL9nU!PFK4vR$0%P+6}9XGlCoi?KV2{{U_a2DELg!^ab zNQA=Dt`TWMx?w%M2eEraIqB|t*@O9TIi7iOy)0Z???`Q7X`f=HeT$X$i%1jFAJ4*B zYquj@_khrL)O(C{S9jt4XhN=}k31L3rh$nTvwv z%ebMK4@o5CLYW{J5pS>ML)qrXsk!J4R<|&}P<_vQe5g!Nqqk)$Q{#}dH4ev84Vgyi zH`GXu0Q$FO;p3tHa&RDT!hX<}k48RKuEGAZ>Kw{nEz^wh=egylyY|PXvG0{XJY#uJ zu8;ib?R)ZrGsqKiJ2fv2#bq3^ynykE#&ZYnLVW9~^!P>Tt~3k8vwcbi+l9v4U-Qta zBl<`heqTP^moK8`8gBdw7}Hco^)lvlY$nCE7U2e(Z z%G@3Dq8HxQk$c^eb_@!*E3DgfKhoVf8_wLW2SXOUG7H@@3#~E*vdFFJVdixhn#OMR zBd+vuR~n6p*H4~wb*{j(a4!nSWNFfyF!z}xw?M-EB5LV5GDn}ur!ptuN20&AZ4=T8 zZ+a^G2pjP2^Gf;=`ix9Q%Lj+HcfcP_=7jl^-aU;9N`7^9BI{) zkQeZ)jT{00g^*v4^o!VVq)!@NgEYLZ5nd3-`)GeSM-uW9^*geRd3cW%=$~NeJ90=G z+pki(o^(fdM5ql3cYHX<9U;!Ny~3?ij~aJID832#lPy$P+F|E%!;aUp^*8duzB{rK zU+n(!9#$*Mf#_ag*w9uh%XSgl@1tKsK4jk0(ErG_a~&R;c2>Fk3K9E_T>IamANJjm z)vk~Ajdp(K+W5bSZLggt!VkAI*cJmK{Hku9KU#GrWQ}Y8!HE5}@N39d%+0p;aP2%~ z*>U9YNPHbx7vb^j#I^gKW!GW6!07gAL@kwhd)toF9_X6+mXIH?=rD@7**6`z%e5Ph zslzzqx-OIVOPcz<826;b;TSve8@lFE+mWX5Y@asZO=bB$65BsrzG4K24?EH;qSG6WxzFeW$82feNGb35752Fw zI^pkxIMN@E8Px%B%(@0fEWb+LnY9l>C%i}D*+hgh6pk5<;Srq?5sp6NH~l#a9W(Ny z;Pf@N*BChAdm4_M3+H4*=X^M3D=vs|#z#04;Fz^v9N}CV;am>K%(yGzn0;&_9Mhl4 z5zf?zooNxyH4)AXIObNqKB9929J5`sB094poVk%ww?sI%!7+Q??QqO(dM6yS?eimc z?tx=&!TaEtTloPvW=~iE$BgqsaLl?E!!iBQMfRCbmSRyl+jn8iGyqyN40pOS~4b{6?gd z{RXq+j;3tZ{&uAHl@UAd!7+R0`*2JP9&A;h60j8rgz+DJ)Wu_EA?Wq8nokK{cNxS^x_4RC7^l*#vTPL zKvTxkoD9~1PK~p#h8|DL0@nIxB)y4J_5gk>WpXE3>*bc0~5eaUFE|RE3N8S%z+$ihdKn;4&}^ECjEEufbMzMRo-(!I7XJ7!4+Zo55nR9IOUEgNpTtBWMk}fd1edFd5tm zmVnp68t^-)R3ClN8XN;o1?PZC;AXH0yaGN3KZ2s&$z`w?I0$qDgTZCsM({9r5xfi5 zfd7Gt4H(}NGzUk5Uf@hH0o({40?WaN;CoP^Aw$K37T{>m2b=-U2a~{UU?F%0ya`r; z?*T)v$o61Yupc-A90$$-W5INAD_96#0PlizfZ^_Bd$23m2OI>tfRn&5FcwS#H-Y=X zqu^!m9{3#m1PU54%p}+iGzABN&fr8a1e^yh1y_T);BN3Jcp1D6J_X-^Kftz)$r;c9 z><115{|0@)>0k_)049SQ!0liGcoMt>R)7z|8t?=76O`Wz|3EF!05k_}K_}21^aVq} z7;rI|3T^Qki~{4qL@)!)1@pmT zuoNri@_u?1Iz(;f(OB);92l0cn5q0 zz5w5WUqPZN`yEgf>;f8qeLyR4Fz5vS4SIu9!B8+7j0abMY2Ze18@LxN22X*Pz?27|yza6Y&MOa|A1x!^9a06Yes1Ixim z@G)2mz6Za7g68yLPz}@u4M9_I05}933A%$5!2mD}i~$#dE5URy3(N!efrr6T@G@8d zJ^-JA|AO^^;h3a6s0?a?dSEZGA7~2>2VKGOpdT0v&H`h>rC0o3qZ~U+d?g(Pr@hw07hFWEQ39$q3E$UxG?8v$A zPVR3aYWcsFs3W^cUCws(H)S?vB+gb`Z=}Z9IY^2hjkAk%<;kb_CD~vsv*V2~%J$`& zyZhI2u{_V?-s@QZIlK4fLZ)9MOm*KFNWD>#{i`eXTjdYR0$C^z$s$=S z56cpHL>`sLO zB~@8fQ9G!rs+y{t1v5wkJ)m8OWeYLx4pc<+@)Sjx5YOMBB zd#fgDAJtSfQ_a=Bs)gE5wN(47R_XxNTK!A4Q3tBF>LArl9jp#fhpNL=d(}Z5t~#nC zR3~+$I!Ya_I;$?Kt2#z?bH{%@R`pQFsh-OF-f(aKi^F}@$$TmD6xCmyss^aj7%S~` zHAoFsL(~~+s2Zk*t25OIMov3RovlWx(Q1r3N1dzAQ+nLA3m8*&yt+{7??_&(E>V}N z%hcuS3U#HrN=;Ogct3KAn#!AR)6{fzjk;FNP}iyJ)l7ARx>3ziH>ufbj+(1(<_(uy z)op5?x?SC&^t*lYd2jI^b+5Wl-LD={52^)fp?XLy;@!W8`CjEC>QTO7`M7#QJ*l2j zOV!ir8TG7sPCc();1>!n@pa2(eD(5GwOqZ%`+{#MhV9*iKdtP@(J{(Q4D|N;yP)p^ zmNax*GTSUbwsG+61iISKU_JdZh+&|opCSh9>6TjG(<$`Vw0>a{VYye{lX<1gxh@yx z1a^wEZ|h{U;T@^VvBf-SI*b%QXhT?D=#~rW)cXfrRxfqAu$@4rbyMq}UZ5N1hs)}i z9qqAk*8DK-l`nu>vq{do{1mGi(3ZUBBi7K3?uL_%=6l!W9F5!>3|F_qzN*0X_cNs%m211< zHfuUuS6HU)1higef{sPXZV-cDY1$9hm2N$VYfx{xwuJo%wuiPAlns_zFT5Tu7p!xi zFylEp#oa%h>E6iHg|xHKpY#aU;p@*TTz^*K`cuz$V!kuK-uHg1U&X!ttZH3Tz^jF`tw%49eTUyZ-?sZ&&m86|0*o$U*ul}t*yR8scBffk@+>)z7E^k z$_#3`o*HIge>(D+`h9!%o1`~V>n!x|e1a~IB-HM&7!H#Mw`g5>#t?R|EY7tk^`ug)}@vc8_<9fQTnn;Pg)yuR? zw`wWWJf@&Mt<`K=a~)QuQA=wzlX_ZnRoX%6woJwLbn4a|9jRl~9M-$5pfA58dc2!? zc&5F*Rf6l!2BGWErTm(~yZ$`gzy5q0PI1?t&r0h0^AfH{kdbY*Pj!(M%LG#gSZ+V&y}&h{=AUu;?uZB_O3risuk)j^|pFPtyJ%-_gKEq zTrWRjzDj+<+I#TcQESu}YOVT`wSj7#`mg#%eakNyzb6v!sh_ywUax*uzo=jN2JP=$ zasQ$IB>C4W$4NK^PN7rIDRQ=Q$~#*-6`XCHZJq6$iq7^Qr;8J3Bfx zoSmGS&dyFPXBVfovz}k4?dH^V>N)kD-JJ$bLuU_XPp6U7*lDQtcA7Z*I8B{qPIG5p zr-ieh(-O-SoCBQJ&cB>C&Vkt28G8p)%XZFTPJ5?=bGXydIl}4W9O)c|W@k$5M@g;M z-8t6j;T-4mbg2`Z-pJcKC%IHV%2jYqbq2W9>CPaQL!2|5q0TU8xO1j6f);G+ob8Nq zMmuAibDVRb&UeN#ALoo`KEb(&`6YO|HEp?qcK2{5I+L8q&J;=yr5)4ptBF4iqD^~K zhc^wQ)?i=C?VK%k+LGJ0s62nQMhKOP^C^`qSr6-d}}aCCzf% zG`vi#ikSpy`1;F7CI43ylRU)d`9b_wRwCeKX(n&4aOS2F_4DsmFR)~ngpN|LyE>O} z#Iux2jr3|-z;8%(7038KrmCCEIWkY$EIu!JaGg<$Z-Uk49kjacRG)bR9@{r?3-jo^ z*gqaOa}}b|l&N`WY9THCsTJ2G-lR?GYZGs3BW>NQkak>y*pt@eDZ97e`Xrcq#zrqX zZnS2sn6D8iK1;RNbC|9H)0wX3dd~YBnC$HXc|LX~=aC~_&Z(T$o@8X^6iVGBAE>MS zk~eehqyL@;?|`~If9uJ)@i9(Ur;BqrPsX$~)89SCN;8$p%rBWN?L-Bg;w;S^=2-HV zA`oY3NgPYPO%NYT|58_s3ulZ#*~-#Iypxi#DVrtutH;u#xbGhPCT)BXFKDaUBY=-{I>b4S=u?y(&7UgOG_XExy{m(x410jjqv1F$j@VGeD^51fy(Sk zZnIQ}DciBMY~4NTn)g{+X1iwWcrpUH&C-8wamUhbah4|gQoK@H5y)+p4&36hw0oST zrPVcKyU7UTHcNYLaar0U&eCLGidRZ20=do7gSNOV?HOljX?4xmZZZP7%~D-$w!24P zmZ>K(z2YoQ_N92Gv?35^Y3~wvkJsBe`S~QKw0cf#H+K=pzbw6ov*O(S{nfV``ozc5 z+-rFWI7Gu}8$|FNl)!-nTymOh%}EbSYg@#e6<#Z_%i1oAISkInHJZ@)N8 zH>cyoWpWsS{L9j6InL58{g-Pw>`ZZ0r4)hu%hFnLmb%|<@HY5i{&o+()X<@n`ax_q zpCgceS=u+w(l|@=Ic5F^-|{a@PmHrP&eFdj6Y{yr{L9kg<1CG{G@n!EZ}2Vuvb1`f zrE!-24VjS7RpwuoR*17S&eD8NnZLoe{L9jAahAqe`Zr`kK3AE4S^9g9-#v<-m*#W- zjD6D)$iFN-IzE=h$I>`CjR@plmUfP_G|p0^kH$p)WogwoOXDn!6Vr%5{$**KI7{O! zHTq~wKN`7Lk5Qj9|Mimu zr4x*%+)s{k)%t~$`$<6clLqKD2Mri8xq-8nONUf5tfsz3FY;Hv)sX++w$BiRm|cb< zkUdLtJu>28Bfm>KlyR1pc7$X5e?0>Em!)Ov8-nq%^so29*h01l$mOq&*`x=&eA;Xn6X=-2;^Uu zJ{8|RimyvUJv3g;$FGz1kB_Bsmd2@RL?Hi;rKjaIOH1nR(L|z}-*=BDyWePtztv!L z|1v^k&r-7?`F8hcjGNQm-J^Xs^6t^Tp(ah0=^-lJ>I|1TGo8rg&0;=BZee~K(;cB{ zzTE3i4@fZSA`6q#VtGU!cc-Vso@UB3TG{w}UY<8-k9a8!PvjN2uep*pXBq#Mtq7F$EcK$j`S*BB>R7rKN8)2?+3Ndc$J?@=rISO)(#?4iQ&L&_Ro-W* z{yLe&UneU&sTuOLtY@j$6z^EN-$tJC?iXr*NoDCeZ07f|G|tk{W-nu_TT+&8&aw0x zw%2z|KQR3y>)q)W=D*1Xp#T1K=b2}zFA|n)mU=ZR|G88`1yg2EV#$^of$Uk@O?6XU zz>!QH)d7C58K~O(_hJXCk?KrmfHTsSoa&s!6pmI)N*$`+WA1TJRwue^XEDFQ=V?g` zXFsQ<)6Xaywo^Lmah8@&Tw|*x8G+5u(mq>6md5WMm1J*YzahAY=N0NELRt@fEp zm2-PuedcYz0KXrG%j9l7&eGh)I<9GRBar(nt>b6uo@D3oe|wh3caJu==fvf57lG_q zn&}>I;Nzy=7McK<=5Us z1ykU8y!_`xAbXasku~xG_=xEzS?-5scRg>dPP4}sKHMPNa ze&e(Bcd4efS0Acset&DiQA!)xElcmuO_Vy|MMs|Hc49h8b#|w&%)6=XK>N@mi=U;N zr9J)Hd#PZ`OojV=k zexD&c_cm#K_h_@b_7+qy_gOk2ud+10F5QAU^A_8b>{(jU*QE`VcU_tvA&t*?^J6>2 zUKAIB>{(jU*QKZC)v+{w_o%qu5zF!;0@<^)q~8$S%76DLKiVH3OY>tp#9kB^f$UjY z(#O(ad37v}uS<*T9kDDwB9J{xOZvL>1^;FCO_jrr*DtEH@mutC;bzIZt zMj(5Zmh>;z`uM+G+gy)Jwp^U0B^%G!T4_We_gQ*zUS(-~##(V$&bJy46nl?8AxzE!7#aX%uzb}o)iP_wqy(N{)eU?6* zS6SL$dT05r(Li@|56ZaFOY6HwgJgK5&Ji*q!V@_w4KHSGNfF4NrDkh4ZY=P9o$|)0 zOa;!5MlRG-znW$(DnaRlqvz@W4scpqvVC3Jo2M_6j@w7|RecQ4Of4<*uA% zExnd~+E_i$lI>4AZ`1o$yeFpJn9A=6Y-*O~cWXA)yMC&_>X$M9M6}G4_s^)+-?gE& z^jh|5WA!{sW{diz^)|h4#d~7fjj8;Oz&|@n$(XF0$2;TAq&7g6)){ZQ8sjtGbWz#z zd7GN08+XQQ$E~E#c(wg=jdR`!F6GVb+KZzHszDi#l3qDap8B$>ZB0uCxmE_M?2|5? zT`SPA>+Rvbc=!^j#}@cBVxSx9Br0d)^(il)Yh={!oiP!=i^+^dOH;8th`V?BnjL^yjpE`gK}9{Tn|2?qATZ==P?c zr!7x^*X08PGRZBPqL20LCgt5d+N+LvV^@+C%OMthghhAp=wyL|EV)l7<((|KPbcO3 zSpLkh{6Er?ziQE6TJ%>I{k2CY>wDLd`*c#i){^^lQm%g=nA%<ZtdX+_g zY|$Thbh5tpExAu8F;%?$b&6y_Vdklk&YS`Ao~-!>#%%8MI3H z=PNFkeihKZedSp4fKJNqbJqfQl)A;E19?FE_C@YBn-r2Xr7;L(TF59mpL^9?*fj$g&^MfxOU?+qAmas{b;N4$4R5gDtsFyIkUs zxXQ36QpL3t#7CsPS>DoDj$b~gKcEBqYLZz#pp)_emfWY4a`Spp`EO_h{wZ~uRod^Tl{nDocc{zW32k{N) zK+bbEv%F6y?w7FL5mz}+IOt}7tn4g>MOANZ$JlfHPN%5^v|aQxns!#+Lw#eF#Hku zw`VUYf69<6$BdV9UUoH8`!$aip&XJZe|PKpDA2#nH_nS@b2Ay|I@3e1ldAbGsw_JpPE>?A4c)&$8$l7JZ#Tv;Q^X#~$74&u0Fq zqO*+hN}XrWB10_tbc0sPzhCTfb>4eVMT2;VoNW11V9^ho_7XQ*w0%4_?_aCL6NbLX zaR#lF)xLxk&x93E$F_H@X)j^MTNRq|Qspf=VQydLyzbgd?KeGIgt#Dy@`(@pAfBpl znCVZERbQdi-Xcps;hzt=Rl;3aomW$l>B>i?gen9hk zO0OTdb3HrIs@JAnaVidKzU9Yn2Ce+J#e({jy4#S8Z0ptUd#luyhFq!f2F+V>hQ7!S zmcN%-@+nsN?Jc>#-|_1g>EW)W;`pjB+0BZh#}C>ivZrBJ72Ijn>+e64^?3Q2s%M!m z;ktvhz^-yUeu}=!vb&8@ugGhLT&X(@T4bd~k2Ywfyu3^K^`V( z!1iaDp|8}VroQ5M!C%n7Re>Ep^LQju$?X5m&1QLLu1PD?Kao8Qe?&evXr;{lAo7)A zk6#g4^!Y}45i?#YaiOJumZ7f-%>JgF#g@L^Uv@Xji|lCW|7y|aSo+sn^dy5;1?O1h z$5?W^zf>`{he#uXRt1X;d#dn0gXY)#hJEf2SoE$2tqK+zRGG2J}Rd2N#s+* zp2&liytlEvL|(Au*8Q?_c79vO-2&5J5&QVR+_K-npp~-g?{CVThYVWe6Qg~~Sz^gM z7;=$AEc#%JzSE)~vFKAQ+C2XkX=TX|u;|w<`hNzk3hn(xq17H+{);7l%djW1vn4;x zq7S#|y{-Q6hh?v=p|6VU{?NoKzrU%k##;3G1}(C+Rlcb~D>d5EZ)V9yS@N-#|DRj( zpA1?#=Ke}#oK=3cp)b}r8{dX*RFN;3c(!a=} zM;h^S2{eM^G4GpL`ZEmsYAbX5tAriD`i6axsYZE`OD*|j7CphL-@JYlxzLi2x9AHj z`aFxCX4Q9z<=-+(|5{6bhDBdz(brq_4HkW)OS_fm8CMV91%zJp|56(x;3Svml;VHL zlTxguRGX02_?FtPw2h6KWh4Tdl*xK85&v&W1d{vAjb2g4U$~gwH6wK4?x*!GTEpLI z`)hjP^Uw{19?O@xL}*>pp+9{!u)-JjW2x@~-og>1H_M=uz5_Fk*SxyyD>CIKk=M6# zWJ+7}u=4Hxj@*B{$g%T9P6FeA{?j%zhH?9H`$d`){o5zRZ_n+klc}(3C6Q~nrFIAo z9mXpYTl2c+6mHdwVf{eXA3=U1Xbet*S0CP7*1zYrVo%B+w}Z&t6}TJ7dSe{eo!hV1 zV*4v>?uTsu0+Bo6b%g#6z2|UCzZrJ}^s&hAgnkGeRNQxvt7E%8x03q7*qb`O$JWKj zo?*Ea=*9Xxd~Jnn1N61f%UP}h`i{v@1o~i>+asUJEvhQmdk5c6!|#TypThDaa4WK& z==5TJCH!;2mtZF70ak-)pbPi_Tm?FUyYO{ue0zv`2Gib2*tiNbr7in{K0yDqX4wlg z0lh&humQcw*f^eb%m^;Xcz73pa_|$NJP=S3Yy;LK`xWd@ndabYVt63!KZj*+mIq^~ zG5+j8%ud0ln(%Mo7WWM-yTjLaA!-ntKE&Wh?2JKY07 zB3nrLI$#*G_uyT`vLEO`nQx&Bkv##u1X~Ni6v{l$ayOPssOxI%-NN!-pq~Ua2l~l% z8?XYOtFt^De8hTfmR-OXtn;?9^aS6tejQ~S(&idEUSKW#?_=-=cnr)1EAan0@G!U& z+yw5Toon##Ic!YEr>pUKDfBFs)3JF4_K!s87G!Pl_Z;-zB9;w^_rA34R$?|0{buNo zLUs%~N6^+&C|892v!PF*efo@1Kb6pT5_^&}cc9-3{pHxb2EEg;`6TQ2fELi5DW|V8 zC*#8z=;=GeS5W2z_-iSD8TFq*y$#X*9(q@NsZYI2(ccN32PktW%lYt5r~X!~*QLxw zU}x|KdfQ`9-|2Xjx_4u_5_?~vTa)#w=ywET(YX|UQ`XNR4t2117&^z}XG8Rcv%UgU zX8mJqu3@C2$mX%UpK^=AOVEwM0&E_G4SmN%KkcZB z>?!JMf{lB1Iea`8J3kY{ZIF+HM-h1xogXNF0{ZW>{yOWmiQ70(1JpyQCgtv6c{4s- zkKO_3%|mY*=!d;-@LxfGGW_Q7SjbW6@#_V70h#{Q&s)^5pB6NRe>S>k zjoyREd%-IN`u6=J;2Y|k$MQp#-yomD`UcPz>C%6OMbu34M z{b=9Uln+a From d337dc2763360b97bcf92878907420d290193f04 Mon Sep 17 00:00:00 2001 From: Mehmet Oguz Derin Date: Mon, 26 Aug 2024 20:56:23 +0900 Subject: [PATCH 2/5] Ignore Python cache --- .gitignore | 1 + .../__pycache__/__init__.cpython-311.pyc | Bin 313 -> 0 bytes 2 files changed, 1 insertion(+) delete mode 100644 bindings/python/tree_sitter_wgsl/__pycache__/__init__.cpython-311.pyc diff --git a/.gitignore b/.gitignore index 27fc43f..0f1ffe1 100644 --- a/.gitignore +++ b/.gitignore @@ -16,6 +16,7 @@ go.sum _obj/ # Python artifacts +__pycache__/ .venv/ dist/ *.egg-info diff --git a/bindings/python/tree_sitter_wgsl/__pycache__/__init__.cpython-311.pyc b/bindings/python/tree_sitter_wgsl/__pycache__/__init__.cpython-311.pyc deleted file mode 100644 index cfcfe4e373f2e69bd0f6db5a80c3a5ecde19ff99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 313 zcmZ3^%f$c$pEA#+g#+owAPx*LK^dQAfQ;!3DGX5zDU2yhIgGhXQA~^sDa`4NQOqeU z!3>(LRWjk}#W@P;MTxn&iA4%&`9%sPMX9N}#hE1~sYNdtfd*(Y-r~qf%u6p#OiwLh z1`7CTvfN^ik59=@j*q{^5ucQqmy(&64weFmC+6hD$FF4g406OTAN}(DqU_>=#N^as z{q%y;^3){#a-fa+P#g83x{LJ-DoZl*^YlTs$3tw72P=$^&&#}1E?4PWK&v1 From 3e87d5fa4f869637cda3bb4b4f15e833485d50a5 Mon Sep 17 00:00:00 2001 From: Mehmet Oguz Derin Date: Mon, 26 Aug 2024 21:53:07 +0900 Subject: [PATCH 3/5] Add higlights --- .gitignore | 1 + config.toml | 3 + package.json | 3 + queries/highlights.scm | 91 + src/parser.c | 31959 +++++++++++++++++++++++++++++++++++++++ tree-sitter-wgsl.wasm | Bin 138248 -> 135129 bytes 6 files changed, 32057 insertions(+) create mode 100644 config.toml create mode 100644 queries/highlights.scm create mode 100644 src/parser.c diff --git a/.gitignore b/.gitignore index 0f1ffe1..7923e92 100644 --- a/.gitignore +++ b/.gitignore @@ -23,6 +23,7 @@ dist/ *.whl # C artifacts +*.dSYM/ *.a *.so *.so.* diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..8e6735f --- /dev/null +++ b/config.toml @@ -0,0 +1,3 @@ +name = "WebGPU Shading Language (WGSL)" +grammar = "wgsl" +path_suffixes = ["wgsl"] diff --git a/package.json b/package.json index 092a4ee..a077532 100644 --- a/package.json +++ b/package.json @@ -47,6 +47,9 @@ "tree-sitter": [ { "scope": "source.wgsl", + "filetypes": [ + "wgsl" + ], "injection-regex": "^wgsl$" } ] diff --git a/queries/highlights.scm b/queries/highlights.scm new file mode 100644 index 0000000..e23351c --- /dev/null +++ b/queries/highlights.scm @@ -0,0 +1,91 @@ +; Types +(type_specifier) @type +(template_elaborated_ident) @type + +; Functions +(function_decl + name: (ident) @function) +(call_expression + function: (template_elaborated_ident) @function) + +; Variables and parameters +(param + name: (ident) @variable.parameter) +(variable_decl + name: (optionally_typed_ident (ident) @variable)) +(const_assert_statement) @variable + +; Struct and struct members +(struct_decl + name: (ident) @type) +(struct_member + name: (member_ident) @property) + +; Attributes +(attribute) @attribute + +; Literals +(bool_literal) @constant.builtin +(int_literal) @number +(float_literal) @float + +; Comments +(_comment) @comment + +; Keywords and storage classes +(global_variable_decl + (variable_decl + (ident_pattern_token) @keyword.storage)) + +; Control flow +"if" @keyword.control +"else" @keyword.control +"loop" @keyword.control +"for" @keyword.control +"while" @keyword.control +"switch" @keyword.control +"case" @keyword.control +"default" @keyword.control +"break" @keyword.control +"continue" @keyword.control +"return" @keyword.control +"discard" @keyword.control + +; Declarations +(global_variable_decl) @keyword +(global_value_decl) @keyword +(variable_decl) @keyword + +; Expressions +(unary_expression + operator: _ @operator) +(multiplicative_expression + operator: _ @operator) +(additive_expression + operator: _ @operator) +(relational_expression + operator: _ @operator) +(assignment_statement + operator: _ @operator.assignment) + +; Punctuation +"(" @punctuation.bracket +")" @punctuation.bracket +"[" @punctuation.bracket +"]" @punctuation.bracket +"{" @punctuation.bracket +"}" @punctuation.bracket +"," @punctuation.delimiter +"." @punctuation.delimiter +":" @punctuation.delimiter +";" @punctuation.delimiter + +; Builtin functions and types +(builtin_value_name) @function.builtin + +; Additional keywords +"var" @keyword +"let" @keyword +"const" @keyword +"fn" @keyword +"struct" @keyword diff --git a/src/parser.c b/src/parser.c new file mode 100644 index 0000000..9f4d973 --- /dev/null +++ b/src/parser.c @@ -0,0 +1,31959 @@ +#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 896 +#define LARGE_STATE_COUNT 17 +#define SYMBOL_COUNT 245 +#define ALIAS_COUNT 0 +#define TOKEN_COUNT 115 +#define EXTERNAL_TOKEN_COUNT 13 +#define FIELD_COUNT 0 +#define MAX_ALIAS_SEQUENCE_LENGTH 10 +#define PRODUCTION_ID_COUNT 1 + +enum ts_symbol_identifiers { + sym_ident_pattern_token = 1, + anon_sym_SEMI = 2, + anon_sym_true = 3, + anon_sym_false = 4, + aux_sym_decimal_int_literal_token1 = 5, + aux_sym_decimal_int_literal_token2 = 6, + sym_hex_int_literal = 7, + aux_sym_decimal_float_literal_token1 = 8, + aux_sym_decimal_float_literal_token2 = 9, + aux_sym_decimal_float_literal_token3 = 10, + aux_sym_decimal_float_literal_token4 = 11, + aux_sym_decimal_float_literal_token5 = 12, + aux_sym_hex_float_literal_token1 = 13, + aux_sym_hex_float_literal_token2 = 14, + aux_sym_hex_float_literal_token3 = 15, + anon_sym_diagnostic = 16, + anon_sym_DOT = 17, + anon_sym_COMMA = 18, + anon_sym_AT = 19, + anon_sym_align = 20, + anon_sym_LPAREN = 21, + anon_sym_RPAREN = 22, + anon_sym_binding = 23, + anon_sym_blend_src = 24, + anon_sym_builtin = 25, + anon_sym_const = 26, + anon_sym_group = 27, + anon_sym_id = 28, + anon_sym_interpolate = 29, + anon_sym_invariant = 30, + anon_sym_location = 31, + anon_sym_must_use = 32, + anon_sym_size = 33, + anon_sym_workgroup_size = 34, + anon_sym_vertex = 35, + anon_sym_fragment = 36, + anon_sym_compute = 37, + anon_sym_struct = 38, + anon_sym_LBRACE = 39, + anon_sym_RBRACE = 40, + anon_sym_COLON = 41, + anon_sym_alias = 42, + anon_sym_EQ = 43, + anon_sym_let = 44, + anon_sym_var = 45, + anon_sym_override = 46, + anon_sym_LBRACK = 47, + anon_sym_RBRACK = 48, + anon_sym_DASH = 49, + anon_sym_BANG = 50, + anon_sym_TILDE = 51, + anon_sym_STAR = 52, + anon_sym_AMP = 53, + anon_sym_SLASH = 54, + anon_sym_PERCENT = 55, + anon_sym_PLUS = 56, + anon_sym_EQ_EQ = 57, + anon_sym_BANG_EQ = 58, + anon_sym_AMP_AMP = 59, + anon_sym_PIPE_PIPE = 60, + anon_sym_PIPE = 61, + anon_sym_CARET = 62, + anon_sym__ = 63, + anon_sym_PLUS_EQ = 64, + anon_sym_DASH_EQ = 65, + anon_sym_STAR_EQ = 66, + anon_sym_SLASH_EQ = 67, + anon_sym_PERCENT_EQ = 68, + anon_sym_AMP_EQ = 69, + anon_sym_PIPE_EQ = 70, + anon_sym_CARET_EQ = 71, + anon_sym_PLUS_PLUS = 72, + anon_sym_DASH_DASH = 73, + anon_sym_if = 74, + anon_sym_else = 75, + anon_sym_switch = 76, + anon_sym_case = 77, + anon_sym_default = 78, + anon_sym_loop = 79, + anon_sym_for = 80, + anon_sym_while = 81, + anon_sym_break = 82, + sym_continue_statement = 83, + anon_sym_continuing = 84, + anon_sym_return = 85, + anon_sym_const_assert = 86, + anon_sym_discard = 87, + anon_sym_fn = 88, + anon_sym_DASH_GT = 89, + anon_sym_enable = 90, + anon_sym_requires = 91, + aux_sym_swizzle_name_token1 = 92, + aux_sym_swizzle_name_token2 = 93, + aux_sym_swizzle_name_token3 = 94, + aux_sym_swizzle_name_token4 = 95, + aux_sym_swizzle_name_token5 = 96, + aux_sym_swizzle_name_token6 = 97, + aux_sym_swizzle_name_token7 = 98, + aux_sym_swizzle_name_token8 = 99, + sym__comment = 100, + sym__blankspace = 101, + sym__block_comment = 102, + sym__disambiguate_template = 103, + sym__template_args_start = 104, + sym__template_args_end = 105, + sym__less_than = 106, + sym__less_than_equal = 107, + sym__shift_left = 108, + sym__shift_left_assign = 109, + sym__greater_than = 110, + sym__greater_than_equal = 111, + sym__shift_right = 112, + sym__shift_right_assign = 113, + sym__error_sentinel = 114, + sym_translation_unit = 115, + sym_global_directive = 116, + sym_bool_literal = 117, + sym_int_literal = 118, + sym_decimal_int_literal = 119, + sym_float_literal = 120, + sym_decimal_float_literal = 121, + sym_hex_float_literal = 122, + sym_diagnostic_directive = 123, + sym_literal = 124, + sym_ident = 125, + sym_member_ident = 126, + sym_diagnostic_name_token = 127, + sym_diagnostic_rule_name = 128, + sym_template_list = 129, + sym_template_arg_comma_list = 130, + sym_template_arg_expression = 131, + sym_align_attr = 132, + sym_binding_attr = 133, + sym_blend_src_attr = 134, + sym_builtin_attr = 135, + sym_builtin_value_name = 136, + sym_const_attr = 137, + sym_diagnostic_attr = 138, + sym_group_attr = 139, + sym_id_attr = 140, + sym_interpolate_attr = 141, + sym_interpolate_type_name = 142, + sym_interpolate_sampling_name = 143, + sym_invariant_attr = 144, + sym_location_attr = 145, + sym_must_use_attr = 146, + sym_size_attr = 147, + sym_workgroup_size_attr = 148, + sym_vertex_attr = 149, + sym_fragment_attr = 150, + sym_compute_attr = 151, + sym_attribute = 152, + sym_diagnostic_control = 153, + sym_struct_decl = 154, + sym_struct_body_decl = 155, + sym_struct_member = 156, + sym_type_alias_decl = 157, + sym_type_specifier = 158, + sym_template_elaborated_ident = 159, + sym_variable_or_value_statement = 160, + sym_variable_decl = 161, + sym_optionally_typed_ident = 162, + sym_global_variable_decl = 163, + sym_global_value_decl = 164, + sym_primary_expression = 165, + sym_call_expression = 166, + sym_call_phrase = 167, + sym_paren_expression = 168, + sym_argument_expression_list = 169, + sym_expression_comma_list = 170, + sym_component_or_swizzle_specifier = 171, + sym_unary_expression = 172, + sym_singular_expression = 173, + sym_lhs_expression = 174, + sym_core_lhs_expression = 175, + sym_multiplicative_expression = 176, + sym_multiplicative_operator = 177, + sym_additive_expression = 178, + sym_additive_operator = 179, + sym_shift_expression = 180, + sym_relational_expression = 181, + sym_short_circuit_and_expression = 182, + sym_short_circuit_or_expression = 183, + sym_binary_or_expression = 184, + sym_binary_and_expression = 185, + sym_binary_xor_expression = 186, + sym_bitwise_expression = 187, + sym_expression = 188, + sym_compound_statement = 189, + sym_assignment_statement = 190, + sym_compound_assignment_operator = 191, + sym_increment_statement = 192, + sym_decrement_statement = 193, + sym_if_statement = 194, + sym_if_clause = 195, + sym_else_if_clause = 196, + sym_else_clause = 197, + sym_switch_statement = 198, + sym_switch_body = 199, + sym_switch_clause = 200, + sym_case_clause = 201, + sym_default_alone_clause = 202, + sym_case_selectors = 203, + sym_case_selector = 204, + sym_loop_statement = 205, + sym_for_statement = 206, + sym_for_header = 207, + sym_for_init = 208, + sym_for_update = 209, + sym_while_statement = 210, + sym_break_statement = 211, + sym_break_if_statement = 212, + sym_continuing_statement = 213, + sym_continuing_compound_statement = 214, + sym_return_statement = 215, + sym_func_call_statement = 216, + sym_const_assert_statement = 217, + sym_statement = 218, + sym_variable_updating_statement = 219, + sym_function_decl = 220, + sym_function_header = 221, + sym_param_list = 222, + sym_param = 223, + sym_enable_directive = 224, + sym_enable_extension_list = 225, + sym_requires_directive = 226, + sym_software_extension_list = 227, + sym_enable_extension_name = 228, + sym_software_extension_name = 229, + sym_severity_control_name = 230, + sym_swizzle_name = 231, + aux_sym_translation_unit_repeat1 = 232, + aux_sym_translation_unit_repeat2 = 233, + aux_sym_template_arg_comma_list_repeat1 = 234, + aux_sym_struct_body_decl_repeat1 = 235, + aux_sym_struct_member_repeat1 = 236, + aux_sym_expression_comma_list_repeat1 = 237, + aux_sym_compound_statement_repeat1 = 238, + aux_sym_if_statement_repeat1 = 239, + aux_sym_switch_body_repeat1 = 240, + aux_sym_case_selectors_repeat1 = 241, + aux_sym_param_list_repeat1 = 242, + aux_sym_enable_extension_list_repeat1 = 243, + aux_sym_software_extension_list_repeat1 = 244, +}; + +static const char * const ts_symbol_names[] = { + [ts_builtin_sym_end] = "end", + [sym_ident_pattern_token] = "ident_pattern_token", + [anon_sym_SEMI] = ";", + [anon_sym_true] = "true", + [anon_sym_false] = "false", + [aux_sym_decimal_int_literal_token1] = "decimal_int_literal_token1", + [aux_sym_decimal_int_literal_token2] = "decimal_int_literal_token2", + [sym_hex_int_literal] = "hex_int_literal", + [aux_sym_decimal_float_literal_token1] = "decimal_float_literal_token1", + [aux_sym_decimal_float_literal_token2] = "decimal_float_literal_token2", + [aux_sym_decimal_float_literal_token3] = "decimal_float_literal_token3", + [aux_sym_decimal_float_literal_token4] = "decimal_float_literal_token4", + [aux_sym_decimal_float_literal_token5] = "decimal_float_literal_token5", + [aux_sym_hex_float_literal_token1] = "hex_float_literal_token1", + [aux_sym_hex_float_literal_token2] = "hex_float_literal_token2", + [aux_sym_hex_float_literal_token3] = "hex_float_literal_token3", + [anon_sym_diagnostic] = "diagnostic", + [anon_sym_DOT] = ".", + [anon_sym_COMMA] = ",", + [anon_sym_AT] = "@", + [anon_sym_align] = "align", + [anon_sym_LPAREN] = "(", + [anon_sym_RPAREN] = ")", + [anon_sym_binding] = "binding", + [anon_sym_blend_src] = "blend_src", + [anon_sym_builtin] = "builtin", + [anon_sym_const] = "const", + [anon_sym_group] = "group", + [anon_sym_id] = "id", + [anon_sym_interpolate] = "interpolate", + [anon_sym_invariant] = "invariant", + [anon_sym_location] = "location", + [anon_sym_must_use] = "must_use", + [anon_sym_size] = "size", + [anon_sym_workgroup_size] = "workgroup_size", + [anon_sym_vertex] = "vertex", + [anon_sym_fragment] = "fragment", + [anon_sym_compute] = "compute", + [anon_sym_struct] = "struct", + [anon_sym_LBRACE] = "{", + [anon_sym_RBRACE] = "}", + [anon_sym_COLON] = ":", + [anon_sym_alias] = "alias", + [anon_sym_EQ] = "=", + [anon_sym_let] = "let", + [anon_sym_var] = "var", + [anon_sym_override] = "override", + [anon_sym_LBRACK] = "[", + [anon_sym_RBRACK] = "]", + [anon_sym_DASH] = "-", + [anon_sym_BANG] = "!", + [anon_sym_TILDE] = "~", + [anon_sym_STAR] = "*", + [anon_sym_AMP] = "&", + [anon_sym_SLASH] = "/", + [anon_sym_PERCENT] = "%", + [anon_sym_PLUS] = "+", + [anon_sym_EQ_EQ] = "==", + [anon_sym_BANG_EQ] = "!=", + [anon_sym_AMP_AMP] = "&&", + [anon_sym_PIPE_PIPE] = "||", + [anon_sym_PIPE] = "|", + [anon_sym_CARET] = "^", + [anon_sym__] = "_", + [anon_sym_PLUS_EQ] = "+=", + [anon_sym_DASH_EQ] = "-=", + [anon_sym_STAR_EQ] = "*=", + [anon_sym_SLASH_EQ] = "/=", + [anon_sym_PERCENT_EQ] = "%=", + [anon_sym_AMP_EQ] = "&=", + [anon_sym_PIPE_EQ] = "|=", + [anon_sym_CARET_EQ] = "^=", + [anon_sym_PLUS_PLUS] = "++", + [anon_sym_DASH_DASH] = "--", + [anon_sym_if] = "if", + [anon_sym_else] = "else", + [anon_sym_switch] = "switch", + [anon_sym_case] = "case", + [anon_sym_default] = "default", + [anon_sym_loop] = "loop", + [anon_sym_for] = "for", + [anon_sym_while] = "while", + [anon_sym_break] = "break", + [sym_continue_statement] = "continue_statement", + [anon_sym_continuing] = "continuing", + [anon_sym_return] = "return", + [anon_sym_const_assert] = "const_assert", + [anon_sym_discard] = "discard", + [anon_sym_fn] = "fn", + [anon_sym_DASH_GT] = "->", + [anon_sym_enable] = "enable", + [anon_sym_requires] = "requires", + [aux_sym_swizzle_name_token1] = "swizzle_name_token1", + [aux_sym_swizzle_name_token2] = "swizzle_name_token2", + [aux_sym_swizzle_name_token3] = "swizzle_name_token3", + [aux_sym_swizzle_name_token4] = "swizzle_name_token4", + [aux_sym_swizzle_name_token5] = "swizzle_name_token5", + [aux_sym_swizzle_name_token6] = "swizzle_name_token6", + [aux_sym_swizzle_name_token7] = "swizzle_name_token7", + [aux_sym_swizzle_name_token8] = "swizzle_name_token8", + [sym__comment] = "_comment", + [sym__blankspace] = "_blankspace", + [sym__block_comment] = "_block_comment", + [sym__disambiguate_template] = "_disambiguate_template", + [sym__template_args_start] = "_template_args_start", + [sym__template_args_end] = "_template_args_end", + [sym__less_than] = "_less_than", + [sym__less_than_equal] = "_less_than_equal", + [sym__shift_left] = "_shift_left", + [sym__shift_left_assign] = "_shift_left_assign", + [sym__greater_than] = "_greater_than", + [sym__greater_than_equal] = "_greater_than_equal", + [sym__shift_right] = "_shift_right", + [sym__shift_right_assign] = "_shift_right_assign", + [sym__error_sentinel] = "_error_sentinel", + [sym_translation_unit] = "translation_unit", + [sym_global_directive] = "global_directive", + [sym_bool_literal] = "bool_literal", + [sym_int_literal] = "int_literal", + [sym_decimal_int_literal] = "decimal_int_literal", + [sym_float_literal] = "float_literal", + [sym_decimal_float_literal] = "decimal_float_literal", + [sym_hex_float_literal] = "hex_float_literal", + [sym_diagnostic_directive] = "diagnostic_directive", + [sym_literal] = "literal", + [sym_ident] = "ident", + [sym_member_ident] = "member_ident", + [sym_diagnostic_name_token] = "diagnostic_name_token", + [sym_diagnostic_rule_name] = "diagnostic_rule_name", + [sym_template_list] = "template_list", + [sym_template_arg_comma_list] = "template_arg_comma_list", + [sym_template_arg_expression] = "template_arg_expression", + [sym_align_attr] = "align_attr", + [sym_binding_attr] = "binding_attr", + [sym_blend_src_attr] = "blend_src_attr", + [sym_builtin_attr] = "builtin_attr", + [sym_builtin_value_name] = "builtin_value_name", + [sym_const_attr] = "const_attr", + [sym_diagnostic_attr] = "diagnostic_attr", + [sym_group_attr] = "group_attr", + [sym_id_attr] = "id_attr", + [sym_interpolate_attr] = "interpolate_attr", + [sym_interpolate_type_name] = "interpolate_type_name", + [sym_interpolate_sampling_name] = "interpolate_sampling_name", + [sym_invariant_attr] = "invariant_attr", + [sym_location_attr] = "location_attr", + [sym_must_use_attr] = "must_use_attr", + [sym_size_attr] = "size_attr", + [sym_workgroup_size_attr] = "workgroup_size_attr", + [sym_vertex_attr] = "vertex_attr", + [sym_fragment_attr] = "fragment_attr", + [sym_compute_attr] = "compute_attr", + [sym_attribute] = "attribute", + [sym_diagnostic_control] = "diagnostic_control", + [sym_struct_decl] = "struct_decl", + [sym_struct_body_decl] = "struct_body_decl", + [sym_struct_member] = "struct_member", + [sym_type_alias_decl] = "type_alias_decl", + [sym_type_specifier] = "type_specifier", + [sym_template_elaborated_ident] = "template_elaborated_ident", + [sym_variable_or_value_statement] = "variable_or_value_statement", + [sym_variable_decl] = "variable_decl", + [sym_optionally_typed_ident] = "optionally_typed_ident", + [sym_global_variable_decl] = "global_variable_decl", + [sym_global_value_decl] = "global_value_decl", + [sym_primary_expression] = "primary_expression", + [sym_call_expression] = "call_expression", + [sym_call_phrase] = "call_phrase", + [sym_paren_expression] = "paren_expression", + [sym_argument_expression_list] = "argument_expression_list", + [sym_expression_comma_list] = "expression_comma_list", + [sym_component_or_swizzle_specifier] = "component_or_swizzle_specifier", + [sym_unary_expression] = "unary_expression", + [sym_singular_expression] = "singular_expression", + [sym_lhs_expression] = "lhs_expression", + [sym_core_lhs_expression] = "core_lhs_expression", + [sym_multiplicative_expression] = "multiplicative_expression", + [sym_multiplicative_operator] = "multiplicative_operator", + [sym_additive_expression] = "additive_expression", + [sym_additive_operator] = "additive_operator", + [sym_shift_expression] = "shift_expression", + [sym_relational_expression] = "relational_expression", + [sym_short_circuit_and_expression] = "short_circuit_and_expression", + [sym_short_circuit_or_expression] = "short_circuit_or_expression", + [sym_binary_or_expression] = "binary_or_expression", + [sym_binary_and_expression] = "binary_and_expression", + [sym_binary_xor_expression] = "binary_xor_expression", + [sym_bitwise_expression] = "bitwise_expression", + [sym_expression] = "expression", + [sym_compound_statement] = "compound_statement", + [sym_assignment_statement] = "assignment_statement", + [sym_compound_assignment_operator] = "compound_assignment_operator", + [sym_increment_statement] = "increment_statement", + [sym_decrement_statement] = "decrement_statement", + [sym_if_statement] = "if_statement", + [sym_if_clause] = "if_clause", + [sym_else_if_clause] = "else_if_clause", + [sym_else_clause] = "else_clause", + [sym_switch_statement] = "switch_statement", + [sym_switch_body] = "switch_body", + [sym_switch_clause] = "switch_clause", + [sym_case_clause] = "case_clause", + [sym_default_alone_clause] = "default_alone_clause", + [sym_case_selectors] = "case_selectors", + [sym_case_selector] = "case_selector", + [sym_loop_statement] = "loop_statement", + [sym_for_statement] = "for_statement", + [sym_for_header] = "for_header", + [sym_for_init] = "for_init", + [sym_for_update] = "for_update", + [sym_while_statement] = "while_statement", + [sym_break_statement] = "break_statement", + [sym_break_if_statement] = "break_if_statement", + [sym_continuing_statement] = "continuing_statement", + [sym_continuing_compound_statement] = "continuing_compound_statement", + [sym_return_statement] = "return_statement", + [sym_func_call_statement] = "func_call_statement", + [sym_const_assert_statement] = "const_assert_statement", + [sym_statement] = "statement", + [sym_variable_updating_statement] = "variable_updating_statement", + [sym_function_decl] = "function_decl", + [sym_function_header] = "function_header", + [sym_param_list] = "param_list", + [sym_param] = "param", + [sym_enable_directive] = "enable_directive", + [sym_enable_extension_list] = "enable_extension_list", + [sym_requires_directive] = "requires_directive", + [sym_software_extension_list] = "software_extension_list", + [sym_enable_extension_name] = "enable_extension_name", + [sym_software_extension_name] = "software_extension_name", + [sym_severity_control_name] = "severity_control_name", + [sym_swizzle_name] = "swizzle_name", + [aux_sym_translation_unit_repeat1] = "translation_unit_repeat1", + [aux_sym_translation_unit_repeat2] = "translation_unit_repeat2", + [aux_sym_template_arg_comma_list_repeat1] = "template_arg_comma_list_repeat1", + [aux_sym_struct_body_decl_repeat1] = "struct_body_decl_repeat1", + [aux_sym_struct_member_repeat1] = "struct_member_repeat1", + [aux_sym_expression_comma_list_repeat1] = "expression_comma_list_repeat1", + [aux_sym_compound_statement_repeat1] = "compound_statement_repeat1", + [aux_sym_if_statement_repeat1] = "if_statement_repeat1", + [aux_sym_switch_body_repeat1] = "switch_body_repeat1", + [aux_sym_case_selectors_repeat1] = "case_selectors_repeat1", + [aux_sym_param_list_repeat1] = "param_list_repeat1", + [aux_sym_enable_extension_list_repeat1] = "enable_extension_list_repeat1", + [aux_sym_software_extension_list_repeat1] = "software_extension_list_repeat1", +}; + +static const TSSymbol ts_symbol_map[] = { + [ts_builtin_sym_end] = ts_builtin_sym_end, + [sym_ident_pattern_token] = sym_ident_pattern_token, + [anon_sym_SEMI] = anon_sym_SEMI, + [anon_sym_true] = anon_sym_true, + [anon_sym_false] = anon_sym_false, + [aux_sym_decimal_int_literal_token1] = aux_sym_decimal_int_literal_token1, + [aux_sym_decimal_int_literal_token2] = aux_sym_decimal_int_literal_token2, + [sym_hex_int_literal] = sym_hex_int_literal, + [aux_sym_decimal_float_literal_token1] = aux_sym_decimal_float_literal_token1, + [aux_sym_decimal_float_literal_token2] = aux_sym_decimal_float_literal_token2, + [aux_sym_decimal_float_literal_token3] = aux_sym_decimal_float_literal_token3, + [aux_sym_decimal_float_literal_token4] = aux_sym_decimal_float_literal_token4, + [aux_sym_decimal_float_literal_token5] = aux_sym_decimal_float_literal_token5, + [aux_sym_hex_float_literal_token1] = aux_sym_hex_float_literal_token1, + [aux_sym_hex_float_literal_token2] = aux_sym_hex_float_literal_token2, + [aux_sym_hex_float_literal_token3] = aux_sym_hex_float_literal_token3, + [anon_sym_diagnostic] = anon_sym_diagnostic, + [anon_sym_DOT] = anon_sym_DOT, + [anon_sym_COMMA] = anon_sym_COMMA, + [anon_sym_AT] = anon_sym_AT, + [anon_sym_align] = anon_sym_align, + [anon_sym_LPAREN] = anon_sym_LPAREN, + [anon_sym_RPAREN] = anon_sym_RPAREN, + [anon_sym_binding] = anon_sym_binding, + [anon_sym_blend_src] = anon_sym_blend_src, + [anon_sym_builtin] = anon_sym_builtin, + [anon_sym_const] = anon_sym_const, + [anon_sym_group] = anon_sym_group, + [anon_sym_id] = anon_sym_id, + [anon_sym_interpolate] = anon_sym_interpolate, + [anon_sym_invariant] = anon_sym_invariant, + [anon_sym_location] = anon_sym_location, + [anon_sym_must_use] = anon_sym_must_use, + [anon_sym_size] = anon_sym_size, + [anon_sym_workgroup_size] = anon_sym_workgroup_size, + [anon_sym_vertex] = anon_sym_vertex, + [anon_sym_fragment] = anon_sym_fragment, + [anon_sym_compute] = anon_sym_compute, + [anon_sym_struct] = anon_sym_struct, + [anon_sym_LBRACE] = anon_sym_LBRACE, + [anon_sym_RBRACE] = anon_sym_RBRACE, + [anon_sym_COLON] = anon_sym_COLON, + [anon_sym_alias] = anon_sym_alias, + [anon_sym_EQ] = anon_sym_EQ, + [anon_sym_let] = anon_sym_let, + [anon_sym_var] = anon_sym_var, + [anon_sym_override] = anon_sym_override, + [anon_sym_LBRACK] = anon_sym_LBRACK, + [anon_sym_RBRACK] = anon_sym_RBRACK, + [anon_sym_DASH] = anon_sym_DASH, + [anon_sym_BANG] = anon_sym_BANG, + [anon_sym_TILDE] = anon_sym_TILDE, + [anon_sym_STAR] = anon_sym_STAR, + [anon_sym_AMP] = anon_sym_AMP, + [anon_sym_SLASH] = anon_sym_SLASH, + [anon_sym_PERCENT] = anon_sym_PERCENT, + [anon_sym_PLUS] = anon_sym_PLUS, + [anon_sym_EQ_EQ] = anon_sym_EQ_EQ, + [anon_sym_BANG_EQ] = anon_sym_BANG_EQ, + [anon_sym_AMP_AMP] = anon_sym_AMP_AMP, + [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, + [anon_sym_PIPE] = anon_sym_PIPE, + [anon_sym_CARET] = anon_sym_CARET, + [anon_sym__] = anon_sym__, + [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, + [anon_sym_DASH_EQ] = anon_sym_DASH_EQ, + [anon_sym_STAR_EQ] = anon_sym_STAR_EQ, + [anon_sym_SLASH_EQ] = anon_sym_SLASH_EQ, + [anon_sym_PERCENT_EQ] = anon_sym_PERCENT_EQ, + [anon_sym_AMP_EQ] = anon_sym_AMP_EQ, + [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ, + [anon_sym_CARET_EQ] = anon_sym_CARET_EQ, + [anon_sym_PLUS_PLUS] = anon_sym_PLUS_PLUS, + [anon_sym_DASH_DASH] = anon_sym_DASH_DASH, + [anon_sym_if] = anon_sym_if, + [anon_sym_else] = anon_sym_else, + [anon_sym_switch] = anon_sym_switch, + [anon_sym_case] = anon_sym_case, + [anon_sym_default] = anon_sym_default, + [anon_sym_loop] = anon_sym_loop, + [anon_sym_for] = anon_sym_for, + [anon_sym_while] = anon_sym_while, + [anon_sym_break] = anon_sym_break, + [sym_continue_statement] = sym_continue_statement, + [anon_sym_continuing] = anon_sym_continuing, + [anon_sym_return] = anon_sym_return, + [anon_sym_const_assert] = anon_sym_const_assert, + [anon_sym_discard] = anon_sym_discard, + [anon_sym_fn] = anon_sym_fn, + [anon_sym_DASH_GT] = anon_sym_DASH_GT, + [anon_sym_enable] = anon_sym_enable, + [anon_sym_requires] = anon_sym_requires, + [aux_sym_swizzle_name_token1] = aux_sym_swizzle_name_token1, + [aux_sym_swizzle_name_token2] = aux_sym_swizzle_name_token2, + [aux_sym_swizzle_name_token3] = aux_sym_swizzle_name_token3, + [aux_sym_swizzle_name_token4] = aux_sym_swizzle_name_token4, + [aux_sym_swizzle_name_token5] = aux_sym_swizzle_name_token5, + [aux_sym_swizzle_name_token6] = aux_sym_swizzle_name_token6, + [aux_sym_swizzle_name_token7] = aux_sym_swizzle_name_token7, + [aux_sym_swizzle_name_token8] = aux_sym_swizzle_name_token8, + [sym__comment] = sym__comment, + [sym__blankspace] = sym__blankspace, + [sym__block_comment] = sym__block_comment, + [sym__disambiguate_template] = sym__disambiguate_template, + [sym__template_args_start] = sym__template_args_start, + [sym__template_args_end] = sym__template_args_end, + [sym__less_than] = sym__less_than, + [sym__less_than_equal] = sym__less_than_equal, + [sym__shift_left] = sym__shift_left, + [sym__shift_left_assign] = sym__shift_left_assign, + [sym__greater_than] = sym__greater_than, + [sym__greater_than_equal] = sym__greater_than_equal, + [sym__shift_right] = sym__shift_right, + [sym__shift_right_assign] = sym__shift_right_assign, + [sym__error_sentinel] = sym__error_sentinel, + [sym_translation_unit] = sym_translation_unit, + [sym_global_directive] = sym_global_directive, + [sym_bool_literal] = sym_bool_literal, + [sym_int_literal] = sym_int_literal, + [sym_decimal_int_literal] = sym_decimal_int_literal, + [sym_float_literal] = sym_float_literal, + [sym_decimal_float_literal] = sym_decimal_float_literal, + [sym_hex_float_literal] = sym_hex_float_literal, + [sym_diagnostic_directive] = sym_diagnostic_directive, + [sym_literal] = sym_literal, + [sym_ident] = sym_ident, + [sym_member_ident] = sym_member_ident, + [sym_diagnostic_name_token] = sym_diagnostic_name_token, + [sym_diagnostic_rule_name] = sym_diagnostic_rule_name, + [sym_template_list] = sym_template_list, + [sym_template_arg_comma_list] = sym_template_arg_comma_list, + [sym_template_arg_expression] = sym_template_arg_expression, + [sym_align_attr] = sym_align_attr, + [sym_binding_attr] = sym_binding_attr, + [sym_blend_src_attr] = sym_blend_src_attr, + [sym_builtin_attr] = sym_builtin_attr, + [sym_builtin_value_name] = sym_builtin_value_name, + [sym_const_attr] = sym_const_attr, + [sym_diagnostic_attr] = sym_diagnostic_attr, + [sym_group_attr] = sym_group_attr, + [sym_id_attr] = sym_id_attr, + [sym_interpolate_attr] = sym_interpolate_attr, + [sym_interpolate_type_name] = sym_interpolate_type_name, + [sym_interpolate_sampling_name] = sym_interpolate_sampling_name, + [sym_invariant_attr] = sym_invariant_attr, + [sym_location_attr] = sym_location_attr, + [sym_must_use_attr] = sym_must_use_attr, + [sym_size_attr] = sym_size_attr, + [sym_workgroup_size_attr] = sym_workgroup_size_attr, + [sym_vertex_attr] = sym_vertex_attr, + [sym_fragment_attr] = sym_fragment_attr, + [sym_compute_attr] = sym_compute_attr, + [sym_attribute] = sym_attribute, + [sym_diagnostic_control] = sym_diagnostic_control, + [sym_struct_decl] = sym_struct_decl, + [sym_struct_body_decl] = sym_struct_body_decl, + [sym_struct_member] = sym_struct_member, + [sym_type_alias_decl] = sym_type_alias_decl, + [sym_type_specifier] = sym_type_specifier, + [sym_template_elaborated_ident] = sym_template_elaborated_ident, + [sym_variable_or_value_statement] = sym_variable_or_value_statement, + [sym_variable_decl] = sym_variable_decl, + [sym_optionally_typed_ident] = sym_optionally_typed_ident, + [sym_global_variable_decl] = sym_global_variable_decl, + [sym_global_value_decl] = sym_global_value_decl, + [sym_primary_expression] = sym_primary_expression, + [sym_call_expression] = sym_call_expression, + [sym_call_phrase] = sym_call_phrase, + [sym_paren_expression] = sym_paren_expression, + [sym_argument_expression_list] = sym_argument_expression_list, + [sym_expression_comma_list] = sym_expression_comma_list, + [sym_component_or_swizzle_specifier] = sym_component_or_swizzle_specifier, + [sym_unary_expression] = sym_unary_expression, + [sym_singular_expression] = sym_singular_expression, + [sym_lhs_expression] = sym_lhs_expression, + [sym_core_lhs_expression] = sym_core_lhs_expression, + [sym_multiplicative_expression] = sym_multiplicative_expression, + [sym_multiplicative_operator] = sym_multiplicative_operator, + [sym_additive_expression] = sym_additive_expression, + [sym_additive_operator] = sym_additive_operator, + [sym_shift_expression] = sym_shift_expression, + [sym_relational_expression] = sym_relational_expression, + [sym_short_circuit_and_expression] = sym_short_circuit_and_expression, + [sym_short_circuit_or_expression] = sym_short_circuit_or_expression, + [sym_binary_or_expression] = sym_binary_or_expression, + [sym_binary_and_expression] = sym_binary_and_expression, + [sym_binary_xor_expression] = sym_binary_xor_expression, + [sym_bitwise_expression] = sym_bitwise_expression, + [sym_expression] = sym_expression, + [sym_compound_statement] = sym_compound_statement, + [sym_assignment_statement] = sym_assignment_statement, + [sym_compound_assignment_operator] = sym_compound_assignment_operator, + [sym_increment_statement] = sym_increment_statement, + [sym_decrement_statement] = sym_decrement_statement, + [sym_if_statement] = sym_if_statement, + [sym_if_clause] = sym_if_clause, + [sym_else_if_clause] = sym_else_if_clause, + [sym_else_clause] = sym_else_clause, + [sym_switch_statement] = sym_switch_statement, + [sym_switch_body] = sym_switch_body, + [sym_switch_clause] = sym_switch_clause, + [sym_case_clause] = sym_case_clause, + [sym_default_alone_clause] = sym_default_alone_clause, + [sym_case_selectors] = sym_case_selectors, + [sym_case_selector] = sym_case_selector, + [sym_loop_statement] = sym_loop_statement, + [sym_for_statement] = sym_for_statement, + [sym_for_header] = sym_for_header, + [sym_for_init] = sym_for_init, + [sym_for_update] = sym_for_update, + [sym_while_statement] = sym_while_statement, + [sym_break_statement] = sym_break_statement, + [sym_break_if_statement] = sym_break_if_statement, + [sym_continuing_statement] = sym_continuing_statement, + [sym_continuing_compound_statement] = sym_continuing_compound_statement, + [sym_return_statement] = sym_return_statement, + [sym_func_call_statement] = sym_func_call_statement, + [sym_const_assert_statement] = sym_const_assert_statement, + [sym_statement] = sym_statement, + [sym_variable_updating_statement] = sym_variable_updating_statement, + [sym_function_decl] = sym_function_decl, + [sym_function_header] = sym_function_header, + [sym_param_list] = sym_param_list, + [sym_param] = sym_param, + [sym_enable_directive] = sym_enable_directive, + [sym_enable_extension_list] = sym_enable_extension_list, + [sym_requires_directive] = sym_requires_directive, + [sym_software_extension_list] = sym_software_extension_list, + [sym_enable_extension_name] = sym_enable_extension_name, + [sym_software_extension_name] = sym_software_extension_name, + [sym_severity_control_name] = sym_severity_control_name, + [sym_swizzle_name] = sym_swizzle_name, + [aux_sym_translation_unit_repeat1] = aux_sym_translation_unit_repeat1, + [aux_sym_translation_unit_repeat2] = aux_sym_translation_unit_repeat2, + [aux_sym_template_arg_comma_list_repeat1] = aux_sym_template_arg_comma_list_repeat1, + [aux_sym_struct_body_decl_repeat1] = aux_sym_struct_body_decl_repeat1, + [aux_sym_struct_member_repeat1] = aux_sym_struct_member_repeat1, + [aux_sym_expression_comma_list_repeat1] = aux_sym_expression_comma_list_repeat1, + [aux_sym_compound_statement_repeat1] = aux_sym_compound_statement_repeat1, + [aux_sym_if_statement_repeat1] = aux_sym_if_statement_repeat1, + [aux_sym_switch_body_repeat1] = aux_sym_switch_body_repeat1, + [aux_sym_case_selectors_repeat1] = aux_sym_case_selectors_repeat1, + [aux_sym_param_list_repeat1] = aux_sym_param_list_repeat1, + [aux_sym_enable_extension_list_repeat1] = aux_sym_enable_extension_list_repeat1, + [aux_sym_software_extension_list_repeat1] = aux_sym_software_extension_list_repeat1, +}; + +static const TSSymbolMetadata ts_symbol_metadata[] = { + [ts_builtin_sym_end] = { + .visible = false, + .named = true, + }, + [sym_ident_pattern_token] = { + .visible = true, + .named = true, + }, + [anon_sym_SEMI] = { + .visible = true, + .named = false, + }, + [anon_sym_true] = { + .visible = true, + .named = false, + }, + [anon_sym_false] = { + .visible = true, + .named = false, + }, + [aux_sym_decimal_int_literal_token1] = { + .visible = false, + .named = false, + }, + [aux_sym_decimal_int_literal_token2] = { + .visible = false, + .named = false, + }, + [sym_hex_int_literal] = { + .visible = true, + .named = true, + }, + [aux_sym_decimal_float_literal_token1] = { + .visible = false, + .named = false, + }, + [aux_sym_decimal_float_literal_token2] = { + .visible = false, + .named = false, + }, + [aux_sym_decimal_float_literal_token3] = { + .visible = false, + .named = false, + }, + [aux_sym_decimal_float_literal_token4] = { + .visible = false, + .named = false, + }, + [aux_sym_decimal_float_literal_token5] = { + .visible = false, + .named = false, + }, + [aux_sym_hex_float_literal_token1] = { + .visible = false, + .named = false, + }, + [aux_sym_hex_float_literal_token2] = { + .visible = false, + .named = false, + }, + [aux_sym_hex_float_literal_token3] = { + .visible = false, + .named = false, + }, + [anon_sym_diagnostic] = { + .visible = true, + .named = false, + }, + [anon_sym_DOT] = { + .visible = true, + .named = false, + }, + [anon_sym_COMMA] = { + .visible = true, + .named = false, + }, + [anon_sym_AT] = { + .visible = true, + .named = false, + }, + [anon_sym_align] = { + .visible = true, + .named = false, + }, + [anon_sym_LPAREN] = { + .visible = true, + .named = false, + }, + [anon_sym_RPAREN] = { + .visible = true, + .named = false, + }, + [anon_sym_binding] = { + .visible = true, + .named = false, + }, + [anon_sym_blend_src] = { + .visible = true, + .named = false, + }, + [anon_sym_builtin] = { + .visible = true, + .named = false, + }, + [anon_sym_const] = { + .visible = true, + .named = false, + }, + [anon_sym_group] = { + .visible = true, + .named = false, + }, + [anon_sym_id] = { + .visible = true, + .named = false, + }, + [anon_sym_interpolate] = { + .visible = true, + .named = false, + }, + [anon_sym_invariant] = { + .visible = true, + .named = false, + }, + [anon_sym_location] = { + .visible = true, + .named = false, + }, + [anon_sym_must_use] = { + .visible = true, + .named = false, + }, + [anon_sym_size] = { + .visible = true, + .named = false, + }, + [anon_sym_workgroup_size] = { + .visible = true, + .named = false, + }, + [anon_sym_vertex] = { + .visible = true, + .named = false, + }, + [anon_sym_fragment] = { + .visible = true, + .named = false, + }, + [anon_sym_compute] = { + .visible = true, + .named = false, + }, + [anon_sym_struct] = { + .visible = true, + .named = false, + }, + [anon_sym_LBRACE] = { + .visible = true, + .named = false, + }, + [anon_sym_RBRACE] = { + .visible = true, + .named = false, + }, + [anon_sym_COLON] = { + .visible = true, + .named = false, + }, + [anon_sym_alias] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_let] = { + .visible = true, + .named = false, + }, + [anon_sym_var] = { + .visible = true, + .named = false, + }, + [anon_sym_override] = { + .visible = true, + .named = false, + }, + [anon_sym_LBRACK] = { + .visible = true, + .named = false, + }, + [anon_sym_RBRACK] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH] = { + .visible = true, + .named = false, + }, + [anon_sym_BANG] = { + .visible = true, + .named = false, + }, + [anon_sym_TILDE] = { + .visible = true, + .named = false, + }, + [anon_sym_STAR] = { + .visible = true, + .named = false, + }, + [anon_sym_AMP] = { + .visible = true, + .named = false, + }, + [anon_sym_SLASH] = { + .visible = true, + .named = false, + }, + [anon_sym_PERCENT] = { + .visible = true, + .named = false, + }, + [anon_sym_PLUS] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_BANG_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_AMP_AMP] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE_PIPE] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE] = { + .visible = true, + .named = false, + }, + [anon_sym_CARET] = { + .visible = true, + .named = false, + }, + [anon_sym__] = { + .visible = true, + .named = false, + }, + [anon_sym_PLUS_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_STAR_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_SLASH_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_PERCENT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_AMP_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_CARET_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_PLUS_PLUS] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH_DASH] = { + .visible = true, + .named = false, + }, + [anon_sym_if] = { + .visible = true, + .named = false, + }, + [anon_sym_else] = { + .visible = true, + .named = false, + }, + [anon_sym_switch] = { + .visible = true, + .named = false, + }, + [anon_sym_case] = { + .visible = true, + .named = false, + }, + [anon_sym_default] = { + .visible = true, + .named = false, + }, + [anon_sym_loop] = { + .visible = true, + .named = false, + }, + [anon_sym_for] = { + .visible = true, + .named = false, + }, + [anon_sym_while] = { + .visible = true, + .named = false, + }, + [anon_sym_break] = { + .visible = true, + .named = false, + }, + [sym_continue_statement] = { + .visible = true, + .named = true, + }, + [anon_sym_continuing] = { + .visible = true, + .named = false, + }, + [anon_sym_return] = { + .visible = true, + .named = false, + }, + [anon_sym_const_assert] = { + .visible = true, + .named = false, + }, + [anon_sym_discard] = { + .visible = true, + .named = false, + }, + [anon_sym_fn] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH_GT] = { + .visible = true, + .named = false, + }, + [anon_sym_enable] = { + .visible = true, + .named = false, + }, + [anon_sym_requires] = { + .visible = true, + .named = false, + }, + [aux_sym_swizzle_name_token1] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token2] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token3] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token4] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token5] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token6] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token7] = { + .visible = false, + .named = false, + }, + [aux_sym_swizzle_name_token8] = { + .visible = false, + .named = false, + }, + [sym__comment] = { + .visible = false, + .named = true, + }, + [sym__blankspace] = { + .visible = false, + .named = true, + }, + [sym__block_comment] = { + .visible = false, + .named = true, + }, + [sym__disambiguate_template] = { + .visible = false, + .named = true, + }, + [sym__template_args_start] = { + .visible = false, + .named = true, + }, + [sym__template_args_end] = { + .visible = false, + .named = true, + }, + [sym__less_than] = { + .visible = false, + .named = true, + }, + [sym__less_than_equal] = { + .visible = false, + .named = true, + }, + [sym__shift_left] = { + .visible = false, + .named = true, + }, + [sym__shift_left_assign] = { + .visible = false, + .named = true, + }, + [sym__greater_than] = { + .visible = false, + .named = true, + }, + [sym__greater_than_equal] = { + .visible = false, + .named = true, + }, + [sym__shift_right] = { + .visible = false, + .named = true, + }, + [sym__shift_right_assign] = { + .visible = false, + .named = true, + }, + [sym__error_sentinel] = { + .visible = false, + .named = true, + }, + [sym_translation_unit] = { + .visible = true, + .named = true, + }, + [sym_global_directive] = { + .visible = true, + .named = true, + }, + [sym_bool_literal] = { + .visible = true, + .named = true, + }, + [sym_int_literal] = { + .visible = true, + .named = true, + }, + [sym_decimal_int_literal] = { + .visible = true, + .named = true, + }, + [sym_float_literal] = { + .visible = true, + .named = true, + }, + [sym_decimal_float_literal] = { + .visible = true, + .named = true, + }, + [sym_hex_float_literal] = { + .visible = true, + .named = true, + }, + [sym_diagnostic_directive] = { + .visible = true, + .named = true, + }, + [sym_literal] = { + .visible = true, + .named = true, + }, + [sym_ident] = { + .visible = true, + .named = true, + }, + [sym_member_ident] = { + .visible = true, + .named = true, + }, + [sym_diagnostic_name_token] = { + .visible = true, + .named = true, + }, + [sym_diagnostic_rule_name] = { + .visible = true, + .named = true, + }, + [sym_template_list] = { + .visible = true, + .named = true, + }, + [sym_template_arg_comma_list] = { + .visible = true, + .named = true, + }, + [sym_template_arg_expression] = { + .visible = true, + .named = true, + }, + [sym_align_attr] = { + .visible = true, + .named = true, + }, + [sym_binding_attr] = { + .visible = true, + .named = true, + }, + [sym_blend_src_attr] = { + .visible = true, + .named = true, + }, + [sym_builtin_attr] = { + .visible = true, + .named = true, + }, + [sym_builtin_value_name] = { + .visible = true, + .named = true, + }, + [sym_const_attr] = { + .visible = true, + .named = true, + }, + [sym_diagnostic_attr] = { + .visible = true, + .named = true, + }, + [sym_group_attr] = { + .visible = true, + .named = true, + }, + [sym_id_attr] = { + .visible = true, + .named = true, + }, + [sym_interpolate_attr] = { + .visible = true, + .named = true, + }, + [sym_interpolate_type_name] = { + .visible = true, + .named = true, + }, + [sym_interpolate_sampling_name] = { + .visible = true, + .named = true, + }, + [sym_invariant_attr] = { + .visible = true, + .named = true, + }, + [sym_location_attr] = { + .visible = true, + .named = true, + }, + [sym_must_use_attr] = { + .visible = true, + .named = true, + }, + [sym_size_attr] = { + .visible = true, + .named = true, + }, + [sym_workgroup_size_attr] = { + .visible = true, + .named = true, + }, + [sym_vertex_attr] = { + .visible = true, + .named = true, + }, + [sym_fragment_attr] = { + .visible = true, + .named = true, + }, + [sym_compute_attr] = { + .visible = true, + .named = true, + }, + [sym_attribute] = { + .visible = true, + .named = true, + }, + [sym_diagnostic_control] = { + .visible = true, + .named = true, + }, + [sym_struct_decl] = { + .visible = true, + .named = true, + }, + [sym_struct_body_decl] = { + .visible = true, + .named = true, + }, + [sym_struct_member] = { + .visible = true, + .named = true, + }, + [sym_type_alias_decl] = { + .visible = true, + .named = true, + }, + [sym_type_specifier] = { + .visible = true, + .named = true, + }, + [sym_template_elaborated_ident] = { + .visible = true, + .named = true, + }, + [sym_variable_or_value_statement] = { + .visible = true, + .named = true, + }, + [sym_variable_decl] = { + .visible = true, + .named = true, + }, + [sym_optionally_typed_ident] = { + .visible = true, + .named = true, + }, + [sym_global_variable_decl] = { + .visible = true, + .named = true, + }, + [sym_global_value_decl] = { + .visible = true, + .named = true, + }, + [sym_primary_expression] = { + .visible = true, + .named = true, + }, + [sym_call_expression] = { + .visible = true, + .named = true, + }, + [sym_call_phrase] = { + .visible = true, + .named = true, + }, + [sym_paren_expression] = { + .visible = true, + .named = true, + }, + [sym_argument_expression_list] = { + .visible = true, + .named = true, + }, + [sym_expression_comma_list] = { + .visible = true, + .named = true, + }, + [sym_component_or_swizzle_specifier] = { + .visible = true, + .named = true, + }, + [sym_unary_expression] = { + .visible = true, + .named = true, + }, + [sym_singular_expression] = { + .visible = true, + .named = true, + }, + [sym_lhs_expression] = { + .visible = true, + .named = true, + }, + [sym_core_lhs_expression] = { + .visible = true, + .named = true, + }, + [sym_multiplicative_expression] = { + .visible = true, + .named = true, + }, + [sym_multiplicative_operator] = { + .visible = true, + .named = true, + }, + [sym_additive_expression] = { + .visible = true, + .named = true, + }, + [sym_additive_operator] = { + .visible = true, + .named = true, + }, + [sym_shift_expression] = { + .visible = true, + .named = true, + }, + [sym_relational_expression] = { + .visible = true, + .named = true, + }, + [sym_short_circuit_and_expression] = { + .visible = true, + .named = true, + }, + [sym_short_circuit_or_expression] = { + .visible = true, + .named = true, + }, + [sym_binary_or_expression] = { + .visible = true, + .named = true, + }, + [sym_binary_and_expression] = { + .visible = true, + .named = true, + }, + [sym_binary_xor_expression] = { + .visible = true, + .named = true, + }, + [sym_bitwise_expression] = { + .visible = true, + .named = true, + }, + [sym_expression] = { + .visible = true, + .named = true, + }, + [sym_compound_statement] = { + .visible = true, + .named = true, + }, + [sym_assignment_statement] = { + .visible = true, + .named = true, + }, + [sym_compound_assignment_operator] = { + .visible = true, + .named = true, + }, + [sym_increment_statement] = { + .visible = true, + .named = true, + }, + [sym_decrement_statement] = { + .visible = true, + .named = true, + }, + [sym_if_statement] = { + .visible = true, + .named = true, + }, + [sym_if_clause] = { + .visible = true, + .named = true, + }, + [sym_else_if_clause] = { + .visible = true, + .named = true, + }, + [sym_else_clause] = { + .visible = true, + .named = true, + }, + [sym_switch_statement] = { + .visible = true, + .named = true, + }, + [sym_switch_body] = { + .visible = true, + .named = true, + }, + [sym_switch_clause] = { + .visible = true, + .named = true, + }, + [sym_case_clause] = { + .visible = true, + .named = true, + }, + [sym_default_alone_clause] = { + .visible = true, + .named = true, + }, + [sym_case_selectors] = { + .visible = true, + .named = true, + }, + [sym_case_selector] = { + .visible = true, + .named = true, + }, + [sym_loop_statement] = { + .visible = true, + .named = true, + }, + [sym_for_statement] = { + .visible = true, + .named = true, + }, + [sym_for_header] = { + .visible = true, + .named = true, + }, + [sym_for_init] = { + .visible = true, + .named = true, + }, + [sym_for_update] = { + .visible = true, + .named = true, + }, + [sym_while_statement] = { + .visible = true, + .named = true, + }, + [sym_break_statement] = { + .visible = true, + .named = true, + }, + [sym_break_if_statement] = { + .visible = true, + .named = true, + }, + [sym_continuing_statement] = { + .visible = true, + .named = true, + }, + [sym_continuing_compound_statement] = { + .visible = true, + .named = true, + }, + [sym_return_statement] = { + .visible = true, + .named = true, + }, + [sym_func_call_statement] = { + .visible = true, + .named = true, + }, + [sym_const_assert_statement] = { + .visible = true, + .named = true, + }, + [sym_statement] = { + .visible = true, + .named = true, + }, + [sym_variable_updating_statement] = { + .visible = true, + .named = true, + }, + [sym_function_decl] = { + .visible = true, + .named = true, + }, + [sym_function_header] = { + .visible = true, + .named = true, + }, + [sym_param_list] = { + .visible = true, + .named = true, + }, + [sym_param] = { + .visible = true, + .named = true, + }, + [sym_enable_directive] = { + .visible = true, + .named = true, + }, + [sym_enable_extension_list] = { + .visible = true, + .named = true, + }, + [sym_requires_directive] = { + .visible = true, + .named = true, + }, + [sym_software_extension_list] = { + .visible = true, + .named = true, + }, + [sym_enable_extension_name] = { + .visible = true, + .named = true, + }, + [sym_software_extension_name] = { + .visible = true, + .named = true, + }, + [sym_severity_control_name] = { + .visible = true, + .named = true, + }, + [sym_swizzle_name] = { + .visible = true, + .named = true, + }, + [aux_sym_translation_unit_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_translation_unit_repeat2] = { + .visible = false, + .named = false, + }, + [aux_sym_template_arg_comma_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_struct_body_decl_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_struct_member_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_expression_comma_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_compound_statement_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_if_statement_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_switch_body_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_case_selectors_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_param_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_enable_extension_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_software_extension_list_repeat1] = { + .visible = false, + .named = false, + }, +}; + +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] = 5, + [6] = 6, + [7] = 7, + [8] = 8, + [9] = 9, + [10] = 10, + [11] = 11, + [12] = 12, + [13] = 13, + [14] = 14, + [15] = 15, + [16] = 16, + [17] = 17, + [18] = 18, + [19] = 19, + [20] = 20, + [21] = 21, + [22] = 20, + [23] = 20, + [24] = 24, + [25] = 24, + [26] = 24, + [27] = 24, + [28] = 20, + [29] = 24, + [30] = 24, + [31] = 31, + [32] = 24, + [33] = 24, + [34] = 20, + [35] = 20, + [36] = 20, + [37] = 20, + [38] = 24, + [39] = 39, + [40] = 24, + [41] = 20, + [42] = 20, + [43] = 43, + [44] = 44, + [45] = 45, + [46] = 46, + [47] = 47, + [48] = 48, + [49] = 49, + [50] = 50, + [51] = 51, + [52] = 51, + [53] = 53, + [54] = 54, + [55] = 55, + [56] = 53, + [57] = 57, + [58] = 53, + [59] = 51, + [60] = 53, + [61] = 61, + [62] = 62, + [63] = 63, + [64] = 64, + [65] = 65, + [66] = 66, + [67] = 51, + [68] = 68, + [69] = 51, + [70] = 70, + [71] = 71, + [72] = 72, + [73] = 73, + [74] = 74, + [75] = 75, + [76] = 51, + [77] = 53, + [78] = 53, + [79] = 51, + [80] = 80, + [81] = 53, + [82] = 51, + [83] = 53, + [84] = 84, + [85] = 85, + [86] = 86, + [87] = 87, + [88] = 88, + [89] = 53, + [90] = 90, + [91] = 51, + [92] = 92, + [93] = 51, + [94] = 94, + [95] = 53, + [96] = 51, + [97] = 97, + [98] = 98, + [99] = 98, + [100] = 97, + [101] = 101, + [102] = 102, + [103] = 103, + [104] = 103, + [105] = 105, + [106] = 103, + [107] = 103, + [108] = 108, + [109] = 108, + [110] = 108, + [111] = 108, + [112] = 108, + [113] = 108, + [114] = 114, + [115] = 114, + [116] = 114, + [117] = 114, + [118] = 118, + [119] = 119, + [120] = 118, + [121] = 114, + [122] = 114, + [123] = 119, + [124] = 114, + [125] = 114, + [126] = 118, + [127] = 118, + [128] = 119, + [129] = 119, + [130] = 130, + [131] = 131, + [132] = 132, + [133] = 119, + [134] = 114, + [135] = 130, + [136] = 131, + [137] = 132, + [138] = 114, + [139] = 118, + [140] = 118, + [141] = 119, + [142] = 142, + [143] = 143, + [144] = 144, + [145] = 145, + [146] = 146, + [147] = 147, + [148] = 148, + [149] = 149, + [150] = 150, + [151] = 151, + [152] = 152, + [153] = 153, + [154] = 154, + [155] = 155, + [156] = 156, + [157] = 157, + [158] = 158, + [159] = 159, + [160] = 153, + [161] = 161, + [162] = 162, + [163] = 163, + [164] = 164, + [165] = 165, + [166] = 166, + [167] = 167, + [168] = 168, + [169] = 161, + [170] = 170, + [171] = 171, + [172] = 172, + [173] = 173, + [174] = 174, + [175] = 175, + [176] = 176, + [177] = 177, + [178] = 145, + [179] = 179, + [180] = 180, + [181] = 181, + [182] = 182, + [183] = 183, + [184] = 184, + [185] = 145, + [186] = 186, + [187] = 187, + [188] = 147, + [189] = 147, + [190] = 190, + [191] = 191, + [192] = 192, + [193] = 193, + [194] = 194, + [195] = 151, + [196] = 196, + [197] = 197, + [198] = 198, + [199] = 199, + [200] = 145, + [201] = 201, + [202] = 202, + [203] = 203, + [204] = 204, + [205] = 205, + [206] = 206, + [207] = 151, + [208] = 208, + [209] = 148, + [210] = 210, + [211] = 211, + [212] = 212, + [213] = 149, + [214] = 214, + [215] = 152, + [216] = 216, + [217] = 150, + [218] = 218, + [219] = 219, + [220] = 220, + [221] = 150, + [222] = 222, + [223] = 223, + [224] = 152, + [225] = 225, + [226] = 226, + [227] = 227, + [228] = 149, + [229] = 229, + [230] = 230, + [231] = 231, + [232] = 232, + [233] = 148, + [234] = 234, + [235] = 235, + [236] = 156, + [237] = 159, + [238] = 238, + [239] = 239, + [240] = 240, + [241] = 241, + [242] = 173, + [243] = 164, + [244] = 163, + [245] = 162, + [246] = 246, + [247] = 174, + [248] = 248, + [249] = 157, + [250] = 155, + [251] = 148, + [252] = 161, + [253] = 253, + [254] = 254, + [255] = 255, + [256] = 256, + [257] = 161, + [258] = 155, + [259] = 259, + [260] = 158, + [261] = 261, + [262] = 165, + [263] = 153, + [264] = 264, + [265] = 166, + [266] = 159, + [267] = 153, + [268] = 165, + [269] = 154, + [270] = 154, + [271] = 158, + [272] = 156, + [273] = 157, + [274] = 162, + [275] = 275, + [276] = 163, + [277] = 277, + [278] = 164, + [279] = 173, + [280] = 166, + [281] = 281, + [282] = 174, + [283] = 283, + [284] = 284, + [285] = 285, + [286] = 145, + [287] = 287, + [288] = 288, + [289] = 289, + [290] = 290, + [291] = 291, + [292] = 292, + [293] = 150, + [294] = 182, + [295] = 145, + [296] = 296, + [297] = 147, + [298] = 298, + [299] = 184, + [300] = 300, + [301] = 301, + [302] = 147, + [303] = 303, + [304] = 181, + [305] = 181, + [306] = 182, + [307] = 184, + [308] = 183, + [309] = 180, + [310] = 179, + [311] = 180, + [312] = 183, + [313] = 148, + [314] = 152, + [315] = 149, + [316] = 150, + [317] = 152, + [318] = 151, + [319] = 145, + [320] = 149, + [321] = 147, + [322] = 151, + [323] = 156, + [324] = 173, + [325] = 165, + [326] = 155, + [327] = 327, + [328] = 159, + [329] = 153, + [330] = 330, + [331] = 159, + [332] = 154, + [333] = 147, + [334] = 149, + [335] = 335, + [336] = 157, + [337] = 158, + [338] = 163, + [339] = 166, + [340] = 162, + [341] = 341, + [342] = 161, + [343] = 155, + [344] = 150, + [345] = 174, + [346] = 166, + [347] = 173, + [348] = 164, + [349] = 163, + [350] = 162, + [351] = 157, + [352] = 156, + [353] = 164, + [354] = 174, + [355] = 148, + [356] = 152, + [357] = 158, + [358] = 154, + [359] = 165, + [360] = 151, + [361] = 163, + [362] = 165, + [363] = 363, + [364] = 156, + [365] = 158, + [366] = 159, + [367] = 153, + [368] = 368, + [369] = 240, + [370] = 155, + [371] = 154, + [372] = 157, + [373] = 152, + [374] = 162, + [375] = 148, + [376] = 150, + [377] = 161, + [378] = 174, + [379] = 151, + [380] = 164, + [381] = 149, + [382] = 173, + [383] = 383, + [384] = 166, + [385] = 184, + [386] = 174, + [387] = 182, + [388] = 283, + [389] = 152, + [390] = 154, + [391] = 157, + [392] = 151, + [393] = 162, + [394] = 163, + [395] = 164, + [396] = 153, + [397] = 287, + [398] = 173, + [399] = 166, + [400] = 155, + [401] = 165, + [402] = 161, + [403] = 180, + [404] = 184, + [405] = 145, + [406] = 406, + [407] = 159, + [408] = 183, + [409] = 182, + [410] = 181, + [411] = 156, + [412] = 181, + [413] = 240, + [414] = 158, + [415] = 183, + [416] = 180, + [417] = 145, + [418] = 156, + [419] = 182, + [420] = 301, + [421] = 283, + [422] = 184, + [423] = 423, + [424] = 303, + [425] = 147, + [426] = 287, + [427] = 158, + [428] = 240, + [429] = 183, + [430] = 430, + [431] = 181, + [432] = 432, + [433] = 433, + [434] = 180, + [435] = 147, + [436] = 183, + [437] = 437, + [438] = 150, + [439] = 423, + [440] = 149, + [441] = 184, + [442] = 152, + [443] = 180, + [444] = 152, + [445] = 150, + [446] = 148, + [447] = 287, + [448] = 182, + [449] = 145, + [450] = 283, + [451] = 151, + [452] = 151, + [453] = 303, + [454] = 301, + [455] = 181, + [456] = 148, + [457] = 149, + [458] = 153, + [459] = 335, + [460] = 162, + [461] = 166, + [462] = 462, + [463] = 463, + [464] = 163, + [465] = 154, + [466] = 147, + [467] = 157, + [468] = 173, + [469] = 155, + [470] = 166, + [471] = 161, + [472] = 158, + [473] = 473, + [474] = 162, + [475] = 156, + [476] = 476, + [477] = 174, + [478] = 159, + [479] = 479, + [480] = 174, + [481] = 157, + [482] = 164, + [483] = 184, + [484] = 164, + [485] = 173, + [486] = 161, + [487] = 158, + [488] = 159, + [489] = 155, + [490] = 490, + [491] = 165, + [492] = 182, + [493] = 163, + [494] = 153, + [495] = 165, + [496] = 154, + [497] = 156, + [498] = 148, + [499] = 150, + [500] = 151, + [501] = 501, + [502] = 502, + [503] = 335, + [504] = 149, + [505] = 152, + [506] = 183, + [507] = 507, + [508] = 508, + [509] = 508, + [510] = 510, + [511] = 164, + [512] = 512, + [513] = 513, + [514] = 514, + [515] = 515, + [516] = 508, + [517] = 508, + [518] = 508, + [519] = 508, + [520] = 520, + [521] = 521, + [522] = 508, + [523] = 523, + [524] = 184, + [525] = 525, + [526] = 526, + [527] = 527, + [528] = 528, + [529] = 529, + [530] = 530, + [531] = 531, + [532] = 532, + [533] = 533, + [534] = 534, + [535] = 535, + [536] = 182, + [537] = 537, + [538] = 538, + [539] = 539, + [540] = 184, + [541] = 155, + [542] = 174, + [543] = 181, + [544] = 182, + [545] = 545, + [546] = 546, + [547] = 240, + [548] = 166, + [549] = 173, + [550] = 508, + [551] = 508, + [552] = 163, + [553] = 508, + [554] = 554, + [555] = 162, + [556] = 157, + [557] = 180, + [558] = 558, + [559] = 154, + [560] = 508, + [561] = 180, + [562] = 183, + [563] = 563, + [564] = 159, + [565] = 335, + [566] = 566, + [567] = 567, + [568] = 568, + [569] = 158, + [570] = 153, + [571] = 181, + [572] = 156, + [573] = 573, + [574] = 165, + [575] = 575, + [576] = 576, + [577] = 161, + [578] = 578, + [579] = 579, + [580] = 433, + [581] = 283, + [582] = 582, + [583] = 583, + [584] = 584, + [585] = 585, + [586] = 423, + [587] = 240, + [588] = 588, + [589] = 287, + [590] = 590, + [591] = 301, + [592] = 303, + [593] = 283, + [594] = 423, + [595] = 181, + [596] = 182, + [597] = 597, + [598] = 184, + [599] = 599, + [600] = 287, + [601] = 183, + [602] = 180, + [603] = 433, + [604] = 604, + [605] = 605, + [606] = 606, + [607] = 607, + [608] = 608, + [609] = 609, + [610] = 610, + [611] = 609, + [612] = 335, + [613] = 613, + [614] = 614, + [615] = 615, + [616] = 610, + [617] = 617, + [618] = 335, + [619] = 619, + [620] = 620, + [621] = 621, + [622] = 622, + [623] = 623, + [624] = 624, + [625] = 625, + [626] = 626, + [627] = 627, + [628] = 599, + [629] = 629, + [630] = 630, + [631] = 631, + [632] = 433, + [633] = 633, + [634] = 406, + [635] = 597, + [636] = 636, + [637] = 637, + [638] = 638, + [639] = 639, + [640] = 640, + [641] = 641, + [642] = 642, + [643] = 608, + [644] = 607, + [645] = 606, + [646] = 605, + [647] = 604, + [648] = 648, + [649] = 649, + [650] = 650, + [651] = 651, + [652] = 652, + [653] = 653, + [654] = 654, + [655] = 655, + [656] = 656, + [657] = 657, + [658] = 658, + [659] = 659, + [660] = 660, + [661] = 661, + [662] = 662, + [663] = 663, + [664] = 664, + [665] = 665, + [666] = 666, + [667] = 667, + [668] = 668, + [669] = 669, + [670] = 670, + [671] = 671, + [672] = 672, + [673] = 673, + [674] = 674, + [675] = 675, + [676] = 432, + [677] = 430, + [678] = 678, + [679] = 679, + [680] = 680, + [681] = 681, + [682] = 682, + [683] = 683, + [684] = 684, + [685] = 685, + [686] = 686, + [687] = 687, + [688] = 688, + [689] = 689, + [690] = 690, + [691] = 691, + [692] = 692, + [693] = 693, + [694] = 694, + [695] = 695, + [696] = 696, + [697] = 697, + [698] = 698, + [699] = 699, + [700] = 700, + [701] = 701, + [702] = 702, + [703] = 703, + [704] = 704, + [705] = 705, + [706] = 706, + [707] = 707, + [708] = 708, + [709] = 709, + [710] = 710, + [711] = 711, + [712] = 712, + [713] = 713, + [714] = 714, + [715] = 715, + [716] = 716, + [717] = 717, + [718] = 718, + [719] = 719, + [720] = 720, + [721] = 721, + [722] = 722, + [723] = 723, + [724] = 724, + [725] = 725, + [726] = 726, + [727] = 727, + [728] = 728, + [729] = 729, + [730] = 730, + [731] = 731, + [732] = 732, + [733] = 733, + [734] = 734, + [735] = 735, + [736] = 736, + [737] = 737, + [738] = 738, + [739] = 739, + [740] = 740, + [741] = 741, + [742] = 742, + [743] = 743, + [744] = 615, + [745] = 745, + [746] = 746, + [747] = 747, + [748] = 748, + [749] = 749, + [750] = 750, + [751] = 751, + [752] = 752, + [753] = 753, + [754] = 754, + [755] = 755, + [756] = 756, + [757] = 757, + [758] = 758, + [759] = 759, + [760] = 760, + [761] = 761, + [762] = 762, + [763] = 763, + [764] = 750, + [765] = 765, + [766] = 766, + [767] = 767, + [768] = 768, + [769] = 769, + [770] = 770, + [771] = 771, + [772] = 772, + [773] = 773, + [774] = 774, + [775] = 775, + [776] = 776, + [777] = 762, + [778] = 758, + [779] = 757, + [780] = 754, + [781] = 753, + [782] = 750, + [783] = 783, + [784] = 767, + [785] = 785, + [786] = 786, + [787] = 787, + [788] = 788, + [789] = 762, + [790] = 758, + [791] = 757, + [792] = 750, + [793] = 793, + [794] = 767, + [795] = 795, + [796] = 796, + [797] = 797, + [798] = 798, + [799] = 762, + [800] = 758, + [801] = 757, + [802] = 750, + [803] = 803, + [804] = 767, + [805] = 805, + [806] = 806, + [807] = 807, + [808] = 808, + [809] = 762, + [810] = 758, + [811] = 757, + [812] = 750, + [813] = 813, + [814] = 767, + [815] = 815, + [816] = 767, + [817] = 817, + [818] = 818, + [819] = 762, + [820] = 758, + [821] = 757, + [822] = 822, + [823] = 823, + [824] = 767, + [825] = 825, + [826] = 762, + [827] = 758, + [828] = 757, + [829] = 750, + [830] = 830, + [831] = 767, + [832] = 832, + [833] = 762, + [834] = 758, + [835] = 757, + [836] = 750, + [837] = 837, + [838] = 767, + [839] = 839, + [840] = 762, + [841] = 758, + [842] = 757, + [843] = 750, + [844] = 844, + [845] = 767, + [846] = 846, + [847] = 762, + [848] = 758, + [849] = 757, + [850] = 850, + [851] = 757, + [852] = 852, + [853] = 853, + [854] = 854, + [855] = 855, + [856] = 856, + [857] = 857, + [858] = 858, + [859] = 859, + [860] = 855, + [861] = 854, + [862] = 853, + [863] = 766, + [864] = 765, + [865] = 750, + [866] = 866, + [867] = 867, + [868] = 868, + [869] = 869, + [870] = 870, + [871] = 763, + [872] = 872, + [873] = 873, + [874] = 874, + [875] = 875, + [876] = 876, + [877] = 877, + [878] = 878, + [879] = 879, + [880] = 880, + [881] = 881, + [882] = 882, + [883] = 883, + [884] = 884, + [885] = 885, + [886] = 886, + [887] = 887, + [888] = 888, + [889] = 889, + [890] = 890, + [891] = 891, + [892] = 892, + [893] = 893, + [894] = 625, + [895] = 462, +}; + +static TSCharacterRange sym_ident_pattern_token_character_set_1[] = { + {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, + {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x370, 0x374}, {0x376, 0x377}, {0x37b, 0x37d}, + {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x48a, 0x52f}, + {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x620, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, + {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x7a5}, + {0x7b1, 0x7b1}, {0x7ca, 0x7ea}, {0x7f4, 0x7f5}, {0x7fa, 0x7fa}, {0x800, 0x815}, {0x81a, 0x81a}, {0x824, 0x824}, {0x828, 0x828}, + {0x840, 0x858}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x8a0, 0x8c9}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, + {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, + {0x9bd, 0x9bd}, {0x9ce, 0x9ce}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0x9fc, 0x9fc}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, + {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, + {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, + {0xae0, 0xae1}, {0xaf9, 0xaf9}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, + {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, + {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbd0, 0xbd0}, {0xc05, 0xc0c}, + {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3d, 0xc3d}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc61}, {0xc80, 0xc80}, + {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcdd, 0xcde}, {0xce0, 0xce1}, + {0xcf1, 0xcf2}, {0xd04, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd3a}, {0xd3d, 0xd3d}, {0xd4e, 0xd4e}, {0xd54, 0xd56}, {0xd5f, 0xd61}, + {0xd7a, 0xd7f}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe32}, + {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xeb0}, {0xeb2, 0xeb2}, + {0xebd, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6c}, {0xf88, 0xf8c}, + {0x1000, 0x102a}, {0x103f, 0x103f}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, + {0x108e, 0x108e}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, + {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, + {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, + {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1711}, {0x171f, 0x1731}, {0x1740, 0x1751}, + {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1878}, {0x1880, 0x18a8}, {0x18aa, 0x18aa}, + {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, + {0x1aa7, 0x1aa7}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4c}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, + {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, {0x1cfa, 0x1cfa}, + {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, + {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, + {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x2102, 0x2102}, + {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, + {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, + {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, + {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x3005, 0x3007}, {0x3021, 0x3029}, {0x3031, 0x3035}, + {0x3038, 0x303c}, {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, + {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, + {0xa67f, 0xa69d}, {0xa6a0, 0xa6ef}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, + {0xa7f2, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fb, 0xa8fb}, + {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9cf, 0xa9cf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, + {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7a, 0xaa7a}, {0xaa7e, 0xaaaf}, {0xaab1, 0xaab1}, + {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaac0, 0xaac0}, {0xaac2, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, + {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabe2}, {0xac00, 0xd7a3}, + {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, + {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, + {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, + {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xff9d}, {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, + {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, + {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x10375}, {0x10380, 0x1039d}, + {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, + {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, + {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, + {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, + {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, + {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, + {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10e80, 0x10ea9}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27}, + {0x10f30, 0x10f45}, {0x10f70, 0x10f81}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11003, 0x11037}, {0x11071, 0x11072}, {0x11075, 0x11075}, {0x11083, 0x110af}, + {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, + {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, + {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, + {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, + {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a}, + {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192f}, + {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32}, + {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40}, + {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, + {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342e}, + {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, + {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, + {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b150, 0x1b152}, {0x1b164, 0x1b167}, + {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, + {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, + {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, + {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, + {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ad}, + {0x1e2c0, 0x1e2eb}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, + {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, + {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, + {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, + {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, + {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b738}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, +}; + +static TSCharacterRange sym_ident_pattern_token_character_set_2[] = { + {'0', '9'}, {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xb7, 0xb7}, {0xba, 0xba}, + {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x300, 0x374}, + {0x376, 0x377}, {0x37b, 0x37d}, {0x37f, 0x37f}, {0x386, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, + {0x483, 0x487}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x591, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, + {0x5c4, 0x5c5}, {0x5c7, 0x5c7}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x610, 0x61a}, {0x620, 0x669}, {0x66e, 0x6d3}, {0x6d5, 0x6dc}, + {0x6df, 0x6e8}, {0x6ea, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x74a}, {0x74d, 0x7b1}, {0x7c0, 0x7f5}, {0x7fa, 0x7fa}, {0x7fd, 0x7fd}, + {0x800, 0x82d}, {0x840, 0x85b}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x898, 0x8e1}, {0x8e3, 0x963}, {0x966, 0x96f}, + {0x971, 0x983}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bc, 0x9c4}, + {0x9c7, 0x9c8}, {0x9cb, 0x9ce}, {0x9d7, 0x9d7}, {0x9dc, 0x9dd}, {0x9df, 0x9e3}, {0x9e6, 0x9f1}, {0x9fc, 0x9fc}, {0x9fe, 0x9fe}, + {0xa01, 0xa03}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, + {0xa3c, 0xa3c}, {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa51, 0xa51}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa66, 0xa75}, + {0xa81, 0xa83}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabc, 0xac5}, + {0xac7, 0xac9}, {0xacb, 0xacd}, {0xad0, 0xad0}, {0xae0, 0xae3}, {0xae6, 0xaef}, {0xaf9, 0xaff}, {0xb01, 0xb03}, {0xb05, 0xb0c}, + {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3c, 0xb44}, {0xb47, 0xb48}, {0xb4b, 0xb4d}, + {0xb55, 0xb57}, {0xb5c, 0xb5d}, {0xb5f, 0xb63}, {0xb66, 0xb6f}, {0xb71, 0xb71}, {0xb82, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, + {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbbe, 0xbc2}, + {0xbc6, 0xbc8}, {0xbca, 0xbcd}, {0xbd0, 0xbd0}, {0xbd7, 0xbd7}, {0xbe6, 0xbef}, {0xc00, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, + {0xc2a, 0xc39}, {0xc3c, 0xc44}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc63}, + {0xc66, 0xc6f}, {0xc80, 0xc83}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbc, 0xcc4}, + {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, {0xcdd, 0xcde}, {0xce0, 0xce3}, {0xce6, 0xcef}, {0xcf1, 0xcf2}, {0xd00, 0xd0c}, + {0xd0e, 0xd10}, {0xd12, 0xd44}, {0xd46, 0xd48}, {0xd4a, 0xd4e}, {0xd54, 0xd57}, {0xd5f, 0xd63}, {0xd66, 0xd6f}, {0xd7a, 0xd7f}, + {0xd81, 0xd83}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xdca, 0xdca}, {0xdcf, 0xdd4}, + {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xde6, 0xdef}, {0xdf2, 0xdf3}, {0xe01, 0xe3a}, {0xe40, 0xe4e}, {0xe50, 0xe59}, {0xe81, 0xe82}, + {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xec8, 0xecd}, + {0xed0, 0xed9}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf18, 0xf19}, {0xf20, 0xf29}, {0xf35, 0xf35}, {0xf37, 0xf37}, {0xf39, 0xf39}, + {0xf3e, 0xf47}, {0xf49, 0xf6c}, {0xf71, 0xf84}, {0xf86, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x1000, 0x1049}, {0x1050, 0x109d}, + {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, + {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, + {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x135f}, {0x1369, 0x1371}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, + {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1715}, {0x171f, 0x1734}, + {0x1740, 0x1753}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17d3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dd}, {0x17e0, 0x17e9}, + {0x180b, 0x180d}, {0x180f, 0x1819}, {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1920, 0x192b}, {0x1930, 0x193b}, + {0x1946, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x1a00, 0x1a1b}, {0x1a20, 0x1a5e}, {0x1a60, 0x1a7c}, + {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, {0x1aa7, 0x1aa7}, {0x1ab0, 0x1abd}, {0x1abf, 0x1ace}, {0x1b00, 0x1b4c}, {0x1b50, 0x1b59}, {0x1b6b, 0x1b73}, + {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2}, + {0x1cd4, 0x1cfa}, {0x1d00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, + {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, + {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x203f, 0x2040}, {0x2054, 0x2054}, {0x2071, 0x2071}, {0x207f, 0x207f}, + {0x2090, 0x209c}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, {0x20e5, 0x20f0}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, + {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, + {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, + {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, + {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, {0x3099, 0x309a}, + {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, + {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, {0xa67f, 0xa6f1}, {0xa717, 0xa71f}, + {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, {0xa7f2, 0xa827}, {0xa82c, 0xa82c}, {0xa840, 0xa873}, + {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, {0xa8e0, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, {0xa980, 0xa9c0}, + {0xa9cf, 0xa9d9}, {0xa9e0, 0xa9fe}, {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa60, 0xaa76}, {0xaa7a, 0xaac2}, {0xaadb, 0xaadd}, + {0xaae0, 0xaaef}, {0xaaf2, 0xaaf6}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, + {0xab5c, 0xab69}, {0xab70, 0xabea}, {0xabec, 0xabed}, {0xabf0, 0xabf9}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, + {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, + {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe00, 0xfe0f}, + {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, + {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff3f, 0xff3f}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7}, + {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, + {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x101fd, 0x101fd}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x102e0, 0x102e0}, {0x10300, 0x1031f}, + {0x1032d, 0x1034a}, {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104a0, 0x104a9}, + {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, + {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, + {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, + {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, + {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, {0x10a60, 0x10a7c}, + {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, + {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, {0x10e80, 0x10ea9}, {0x10eab, 0x10eac}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, + {0x10f27, 0x10f27}, {0x10f30, 0x10f50}, {0x10f70, 0x10f85}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11000, 0x11046}, {0x11066, 0x11075}, {0x1107f, 0x110ba}, + {0x110c2, 0x110c2}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, {0x11100, 0x11134}, {0x11136, 0x1113f}, {0x11144, 0x11147}, {0x11150, 0x11173}, {0x11176, 0x11176}, + {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111ce, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x11237}, {0x1123e, 0x1123e}, {0x11280, 0x11286}, + {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, + {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, + {0x11350, 0x11350}, {0x11357, 0x11357}, {0x1135d, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11400, 0x1144a}, {0x11450, 0x11459}, {0x1145e, 0x11461}, + {0x11480, 0x114c5}, {0x114c7, 0x114c7}, {0x114d0, 0x114d9}, {0x11580, 0x115b5}, {0x115b8, 0x115c0}, {0x115d8, 0x115dd}, {0x11600, 0x11640}, {0x11644, 0x11644}, + {0x11650, 0x11659}, {0x11680, 0x116b8}, {0x116c0, 0x116c9}, {0x11700, 0x1171a}, {0x1171d, 0x1172b}, {0x11730, 0x11739}, {0x11740, 0x11746}, {0x11800, 0x1183a}, + {0x118a0, 0x118e9}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x11935}, {0x11937, 0x11938}, {0x1193b, 0x11943}, + {0x11950, 0x11959}, {0x119a0, 0x119a7}, {0x119aa, 0x119d7}, {0x119da, 0x119e1}, {0x119e3, 0x119e4}, {0x11a00, 0x11a3e}, {0x11a47, 0x11a47}, {0x11a50, 0x11a99}, + {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7}, + {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3a, 0x11d3a}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}, + {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef6}, {0x11fb0, 0x11fb0}, + {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, + {0x16a60, 0x16a69}, {0x16a70, 0x16abe}, {0x16ac0, 0x16ac9}, {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, {0x16b50, 0x16b59}, + {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f4f, 0x16f87}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe4}, + {0x16ff0, 0x16ff1}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, + {0x1b150, 0x1b152}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e}, + {0x1cf00, 0x1cf2d}, {0x1cf30, 0x1cf46}, {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, + {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, + {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, + {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, + {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, + {0x1da3b, 0x1da6c}, {0x1da75, 0x1da75}, {0x1da84, 0x1da84}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1df00, 0x1df1e}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, + {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e100, 0x1e12c}, {0x1e130, 0x1e13d}, {0x1e140, 0x1e149}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ae}, + {0x1e2c0, 0x1e2f9}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94b}, + {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, + {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, + {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, + {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, + {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1fbf0, 0x1fbf9}, {0x20000, 0x2a6df}, {0x2a700, 0x2b738}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, + {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0xe0100, 0xe01ef}, +}; + +static bool ts_lex(TSLexer *lexer, TSStateId state) { + START_LEXER(); + eof = lexer->eof(lexer); + switch (state) { + case 0: + if (eof) ADVANCE(32); + ADVANCE_MAP( + '!', 74, + '%', 84, + '&', 80, + '(', 62, + ')', 63, + '*', 77, + '+', 86, + ',', 60, + '-', 72, + '.', 59, + '/', 82, + '0', 35, + ':', 66, + ';', 33, + '=', 68, + '@', 61, + '[', 69, + ']', 70, + '^', 94, + '_', 95, + '{', 64, + '|', 91, + '}', 65, + '~', 75, + 'a', 109, + 'b', 109, + 'g', 109, + 'r', 109, + ); + if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(112); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(37); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x85 || + lookahead == 0x200e || + lookahead == 0x200f || + lookahead == 0x2028 || + lookahead == 0x2029) ADVANCE(115); + if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); + END_STATE(); + case 1: + ADVANCE_MAP( + '!', 9, + '%', 83, + '&', 79, + '(', 62, + ')', 63, + '*', 76, + '+', 85, + ',', 60, + '-', 71, + '.', 58, + '/', 81, + ':', 66, + ';', 33, + '=', 13, + '@', 61, + '[', 69, + ']', 70, + '^', 93, + '{', 64, + '|', 92, + ); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x85 || + lookahead == 0x200e || + lookahead == 0x200f || + lookahead == 0x2028 || + lookahead == 0x2029) ADVANCE(115); + END_STATE(); + case 2: + ADVANCE_MAP( + '%', 83, + '&', 78, + '(', 62, + ')', 63, + '*', 76, + '+', 85, + ',', 60, + '-', 71, + '.', 58, + '/', 81, + ':', 66, + ';', 33, + '=', 67, + '@', 61, + '[', 69, + ']', 70, + '^', 93, + '_', 30, + '{', 64, + '|', 92, + '}', 65, + ); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x85 || + lookahead == 0x200e || + lookahead == 0x200f || + lookahead == 0x2028 || + lookahead == 0x2029) ADVANCE(115); + if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); + END_STATE(); + case 3: + ADVANCE_MAP( + '%', 10, + '&', 11, + '(', 62, + '*', 12, + '+', 4, + '-', 5, + '.', 58, + '/', 8, + '=', 67, + '@', 61, + '[', 69, + '^', 14, + '{', 64, + '|', 15, + ); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x85 || + lookahead == 0x200e || + lookahead == 0x200f || + lookahead == 0x2028 || + lookahead == 0x2029) ADVANCE(115); + END_STATE(); + case 4: + if (lookahead == '+') ADVANCE(104); + if (lookahead == '=') ADVANCE(96); + END_STATE(); + case 5: + if (lookahead == '-') ADVANCE(105); + if (lookahead == '=') ADVANCE(97); + if (lookahead == '>') ADVANCE(106); + END_STATE(); + case 6: + if (lookahead == '.') ADVANCE(46); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(16); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(6); + END_STATE(); + case 7: + if (lookahead == '.') ADVANCE(29); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(39); + END_STATE(); + case 8: + if (lookahead == '/') ADVANCE(114); + if (lookahead == '=') ADVANCE(99); + END_STATE(); + case 9: + if (lookahead == '=') ADVANCE(88); + END_STATE(); + case 10: + if (lookahead == '=') ADVANCE(100); + END_STATE(); + case 11: + if (lookahead == '=') ADVANCE(101); + END_STATE(); + case 12: + if (lookahead == '=') ADVANCE(98); + END_STATE(); + case 13: + if (lookahead == '=') ADVANCE(87); + END_STATE(); + case 14: + if (lookahead == '=') ADVANCE(103); + END_STATE(); + case 15: + if (lookahead == '=') ADVANCE(102); + END_STATE(); + case 16: + if (lookahead == '+' || + lookahead == '-') ADVANCE(23); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(49); + END_STATE(); + case 17: + if (lookahead == '+' || + lookahead == '-') ADVANCE(24); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(44); + END_STATE(); + case 18: + if (lookahead == '+' || + lookahead == '-') ADVANCE(25); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(47); + END_STATE(); + case 19: + if (lookahead == '+' || + lookahead == '-') ADVANCE(26); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57); + END_STATE(); + case 20: + if (lookahead == '+' || + lookahead == '-') ADVANCE(27); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(52); + END_STATE(); + case 21: + if (lookahead == '+' || + lookahead == '-') ADVANCE(28); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(55); + END_STATE(); + case 22: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); + END_STATE(); + case 23: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(49); + END_STATE(); + case 24: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(44); + END_STATE(); + case 25: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(47); + END_STATE(); + case 26: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57); + END_STATE(); + case 27: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(52); + END_STATE(); + case 28: + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(55); + END_STATE(); + case 29: + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); + END_STATE(); + case 30: + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 31: + if (eof) ADVANCE(32); + ADVANCE_MAP( + '!', 73, + '%', 83, + '&', 78, + '(', 62, + ')', 63, + '*', 76, + '+', 85, + ',', 60, + '-', 71, + '.', 22, + '/', 81, + '0', 35, + ':', 66, + ';', 33, + '=', 67, + '@', 61, + ']', 70, + '^', 93, + '_', 95, + '{', 64, + '|', 92, + '}', 65, + '~', 75, + ); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(37); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ' || + lookahead == 0x85 || + lookahead == 0x200e || + lookahead == 0x200f || + lookahead == 0x2028 || + lookahead == 0x2029) ADVANCE(115); + if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); + END_STATE(); + case 32: + ACCEPT_TOKEN(ts_builtin_sym_end); + END_STATE(); + case 33: + ACCEPT_TOKEN(anon_sym_SEMI); + END_STATE(); + case 34: + ACCEPT_TOKEN(aux_sym_decimal_int_literal_token1); + END_STATE(); + case 35: + ACCEPT_TOKEN(aux_sym_decimal_int_literal_token1); + ADVANCE_MAP( + '.', 46, + 'E', 16, + 'e', 16, + 'X', 7, + 'x', 7, + 'f', 40, + 'h', 40, + 'i', 34, + 'u', 34, + ); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(6); + END_STATE(); + case 36: + ACCEPT_TOKEN(aux_sym_decimal_int_literal_token2); + END_STATE(); + case 37: + ACCEPT_TOKEN(aux_sym_decimal_int_literal_token2); + if (lookahead == '.') ADVANCE(46); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(16); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(41); + if (lookahead == 'i' || + lookahead == 'u') ADVANCE(36); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(37); + END_STATE(); + case 38: + ACCEPT_TOKEN(sym_hex_int_literal); + END_STATE(); + case 39: + ACCEPT_TOKEN(sym_hex_int_literal); + if (lookahead == '.') ADVANCE(54); + if (lookahead == 'P' || + lookahead == 'p') ADVANCE(19); + if (lookahead == 'i' || + lookahead == 'u') ADVANCE(38); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(39); + END_STATE(); + case 40: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token1); + END_STATE(); + case 41: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token2); + END_STATE(); + case 42: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); + END_STATE(); + case 43: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(17); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(42); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); + END_STATE(); + case 44: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(42); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(44); + END_STATE(); + case 45: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); + END_STATE(); + case 46: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); + if (lookahead == 'E' || + lookahead == 'e') ADVANCE(18); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(45); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); + END_STATE(); + case 47: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(45); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(47); + END_STATE(); + case 48: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token5); + END_STATE(); + case 49: + ACCEPT_TOKEN(aux_sym_decimal_float_literal_token5); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(48); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(49); + END_STATE(); + case 50: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); + END_STATE(); + case 51: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); + if (lookahead == 'P' || + lookahead == 'p') ADVANCE(20); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); + END_STATE(); + case 52: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(50); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(52); + END_STATE(); + case 53: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); + END_STATE(); + case 54: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); + if (lookahead == 'P' || + lookahead == 'p') ADVANCE(21); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); + END_STATE(); + case 55: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(53); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(55); + END_STATE(); + case 56: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token3); + END_STATE(); + case 57: + ACCEPT_TOKEN(aux_sym_hex_float_literal_token3); + if (lookahead == 'f' || + lookahead == 'h') ADVANCE(56); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57); + END_STATE(); + case 58: + ACCEPT_TOKEN(anon_sym_DOT); + END_STATE(); + case 59: + ACCEPT_TOKEN(anon_sym_DOT); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); + END_STATE(); + case 60: + ACCEPT_TOKEN(anon_sym_COMMA); + END_STATE(); + case 61: + ACCEPT_TOKEN(anon_sym_AT); + END_STATE(); + case 62: + ACCEPT_TOKEN(anon_sym_LPAREN); + END_STATE(); + case 63: + ACCEPT_TOKEN(anon_sym_RPAREN); + END_STATE(); + case 64: + ACCEPT_TOKEN(anon_sym_LBRACE); + END_STATE(); + case 65: + ACCEPT_TOKEN(anon_sym_RBRACE); + END_STATE(); + case 66: + ACCEPT_TOKEN(anon_sym_COLON); + END_STATE(); + case 67: + ACCEPT_TOKEN(anon_sym_EQ); + END_STATE(); + case 68: + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(87); + END_STATE(); + case 69: + ACCEPT_TOKEN(anon_sym_LBRACK); + END_STATE(); + case 70: + ACCEPT_TOKEN(anon_sym_RBRACK); + END_STATE(); + case 71: + ACCEPT_TOKEN(anon_sym_DASH); + END_STATE(); + case 72: + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '=') ADVANCE(97); + if (lookahead == '>') ADVANCE(106); + END_STATE(); + case 73: + ACCEPT_TOKEN(anon_sym_BANG); + END_STATE(); + case 74: + ACCEPT_TOKEN(anon_sym_BANG); + if (lookahead == '=') ADVANCE(88); + END_STATE(); + case 75: + ACCEPT_TOKEN(anon_sym_TILDE); + END_STATE(); + case 76: + ACCEPT_TOKEN(anon_sym_STAR); + END_STATE(); + case 77: + ACCEPT_TOKEN(anon_sym_STAR); + if (lookahead == '=') ADVANCE(98); + END_STATE(); + case 78: + ACCEPT_TOKEN(anon_sym_AMP); + END_STATE(); + case 79: + ACCEPT_TOKEN(anon_sym_AMP); + if (lookahead == '&') ADVANCE(89); + END_STATE(); + case 80: + ACCEPT_TOKEN(anon_sym_AMP); + if (lookahead == '&') ADVANCE(89); + if (lookahead == '=') ADVANCE(101); + END_STATE(); + case 81: + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '/') ADVANCE(114); + END_STATE(); + case 82: + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '/') ADVANCE(114); + if (lookahead == '=') ADVANCE(99); + END_STATE(); + case 83: + ACCEPT_TOKEN(anon_sym_PERCENT); + END_STATE(); + case 84: + ACCEPT_TOKEN(anon_sym_PERCENT); + if (lookahead == '=') ADVANCE(100); + END_STATE(); + case 85: + ACCEPT_TOKEN(anon_sym_PLUS); + END_STATE(); + case 86: + ACCEPT_TOKEN(anon_sym_PLUS); + if (lookahead == '+') ADVANCE(104); + if (lookahead == '=') ADVANCE(96); + END_STATE(); + case 87: + ACCEPT_TOKEN(anon_sym_EQ_EQ); + END_STATE(); + case 88: + ACCEPT_TOKEN(anon_sym_BANG_EQ); + END_STATE(); + case 89: + ACCEPT_TOKEN(anon_sym_AMP_AMP); + END_STATE(); + case 90: + ACCEPT_TOKEN(anon_sym_PIPE_PIPE); + END_STATE(); + case 91: + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '=') ADVANCE(102); + if (lookahead == '|') ADVANCE(90); + END_STATE(); + case 92: + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '|') ADVANCE(90); + END_STATE(); + case 93: + ACCEPT_TOKEN(anon_sym_CARET); + END_STATE(); + case 94: + ACCEPT_TOKEN(anon_sym_CARET); + if (lookahead == '=') ADVANCE(103); + END_STATE(); + case 95: + ACCEPT_TOKEN(anon_sym__); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 96: + ACCEPT_TOKEN(anon_sym_PLUS_EQ); + END_STATE(); + case 97: + ACCEPT_TOKEN(anon_sym_DASH_EQ); + END_STATE(); + case 98: + ACCEPT_TOKEN(anon_sym_STAR_EQ); + END_STATE(); + case 99: + ACCEPT_TOKEN(anon_sym_SLASH_EQ); + END_STATE(); + case 100: + ACCEPT_TOKEN(anon_sym_PERCENT_EQ); + END_STATE(); + case 101: + ACCEPT_TOKEN(anon_sym_AMP_EQ); + END_STATE(); + case 102: + ACCEPT_TOKEN(anon_sym_PIPE_EQ); + END_STATE(); + case 103: + ACCEPT_TOKEN(anon_sym_CARET_EQ); + END_STATE(); + case 104: + ACCEPT_TOKEN(anon_sym_PLUS_PLUS); + END_STATE(); + case 105: + ACCEPT_TOKEN(anon_sym_DASH_DASH); + END_STATE(); + case 106: + ACCEPT_TOKEN(anon_sym_DASH_GT); + END_STATE(); + case 107: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (lookahead == 'a' || + lookahead == 'b' || + lookahead == 'g' || + lookahead == 'r') ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 108: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (lookahead == 'a' || + lookahead == 'b' || + lookahead == 'g' || + lookahead == 'r') ADVANCE(107); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 109: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (lookahead == 'a' || + lookahead == 'b' || + lookahead == 'g' || + lookahead == 'r') ADVANCE(108); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 110: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 111: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(110); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 112: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(111); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 113: + ACCEPT_TOKEN(sym_ident_pattern_token); + if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + END_STATE(); + case 114: + ACCEPT_TOKEN(sym__comment); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(114); + END_STATE(); + case 115: + ACCEPT_TOKEN(sym__blankspace); + END_STATE(); + default: + return false; + } +} + +static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { + START_LEXER(); + eof = lexer->eof(lexer); + switch (state) { + case 0: + ADVANCE_MAP( + 'a', 1, + 'b', 2, + 'c', 3, + 'd', 4, + 'e', 5, + 'f', 6, + 'g', 7, + 'i', 8, + 'l', 9, + 'm', 10, + 'o', 11, + 'r', 12, + 's', 13, + 't', 14, + 'v', 15, + 'w', 16, + ); + END_STATE(); + case 1: + if (lookahead == 'l') ADVANCE(17); + END_STATE(); + case 2: + if (lookahead == 'i') ADVANCE(18); + if (lookahead == 'l') ADVANCE(19); + if (lookahead == 'r') ADVANCE(20); + if (lookahead == 'u') ADVANCE(21); + END_STATE(); + case 3: + if (lookahead == 'a') ADVANCE(22); + if (lookahead == 'o') ADVANCE(23); + END_STATE(); + case 4: + if (lookahead == 'e') ADVANCE(24); + if (lookahead == 'i') ADVANCE(25); + END_STATE(); + case 5: + if (lookahead == 'l') ADVANCE(26); + if (lookahead == 'n') ADVANCE(27); + END_STATE(); + case 6: + if (lookahead == 'a') ADVANCE(28); + if (lookahead == 'n') ADVANCE(29); + if (lookahead == 'o') ADVANCE(30); + if (lookahead == 'r') ADVANCE(31); + END_STATE(); + case 7: + if (lookahead == 'r') ADVANCE(32); + END_STATE(); + case 8: + if (lookahead == 'd') ADVANCE(33); + if (lookahead == 'f') ADVANCE(34); + if (lookahead == 'n') ADVANCE(35); + END_STATE(); + case 9: + if (lookahead == 'e') ADVANCE(36); + if (lookahead == 'o') ADVANCE(37); + END_STATE(); + case 10: + if (lookahead == 'u') ADVANCE(38); + END_STATE(); + case 11: + if (lookahead == 'v') ADVANCE(39); + END_STATE(); + case 12: + if (lookahead == 'e') ADVANCE(40); + END_STATE(); + case 13: + if (lookahead == 'i') ADVANCE(41); + if (lookahead == 't') ADVANCE(42); + if (lookahead == 'w') ADVANCE(43); + END_STATE(); + case 14: + if (lookahead == 'r') ADVANCE(44); + END_STATE(); + case 15: + if (lookahead == 'a') ADVANCE(45); + if (lookahead == 'e') ADVANCE(46); + END_STATE(); + case 16: + if (lookahead == 'h') ADVANCE(47); + if (lookahead == 'o') ADVANCE(48); + END_STATE(); + case 17: + if (lookahead == 'i') ADVANCE(49); + END_STATE(); + case 18: + if (lookahead == 'n') ADVANCE(50); + END_STATE(); + case 19: + if (lookahead == 'e') ADVANCE(51); + END_STATE(); + case 20: + if (lookahead == 'e') ADVANCE(52); + END_STATE(); + case 21: + if (lookahead == 'i') ADVANCE(53); + END_STATE(); + case 22: + if (lookahead == 's') ADVANCE(54); + END_STATE(); + case 23: + if (lookahead == 'm') ADVANCE(55); + if (lookahead == 'n') ADVANCE(56); + END_STATE(); + case 24: + if (lookahead == 'f') ADVANCE(57); + END_STATE(); + case 25: + if (lookahead == 'a') ADVANCE(58); + if (lookahead == 's') ADVANCE(59); + END_STATE(); + case 26: + if (lookahead == 's') ADVANCE(60); + END_STATE(); + case 27: + if (lookahead == 'a') ADVANCE(61); + END_STATE(); + case 28: + if (lookahead == 'l') ADVANCE(62); + END_STATE(); + case 29: + ACCEPT_TOKEN(anon_sym_fn); + END_STATE(); + case 30: + if (lookahead == 'r') ADVANCE(63); + END_STATE(); + case 31: + if (lookahead == 'a') ADVANCE(64); + END_STATE(); + case 32: + if (lookahead == 'o') ADVANCE(65); + END_STATE(); + case 33: + ACCEPT_TOKEN(anon_sym_id); + END_STATE(); + case 34: + ACCEPT_TOKEN(anon_sym_if); + END_STATE(); + case 35: + if (lookahead == 't') ADVANCE(66); + if (lookahead == 'v') ADVANCE(67); + END_STATE(); + case 36: + if (lookahead == 't') ADVANCE(68); + END_STATE(); + case 37: + if (lookahead == 'c') ADVANCE(69); + if (lookahead == 'o') ADVANCE(70); + END_STATE(); + case 38: + if (lookahead == 's') ADVANCE(71); + END_STATE(); + case 39: + if (lookahead == 'e') ADVANCE(72); + END_STATE(); + case 40: + if (lookahead == 'q') ADVANCE(73); + if (lookahead == 't') ADVANCE(74); + END_STATE(); + case 41: + if (lookahead == 'z') ADVANCE(75); + END_STATE(); + case 42: + if (lookahead == 'r') ADVANCE(76); + END_STATE(); + case 43: + if (lookahead == 'i') ADVANCE(77); + END_STATE(); + case 44: + if (lookahead == 'u') ADVANCE(78); + END_STATE(); + case 45: + if (lookahead == 'r') ADVANCE(79); + END_STATE(); + case 46: + if (lookahead == 'r') ADVANCE(80); + END_STATE(); + case 47: + if (lookahead == 'i') ADVANCE(81); + END_STATE(); + case 48: + if (lookahead == 'r') ADVANCE(82); + END_STATE(); + case 49: + if (lookahead == 'a') ADVANCE(83); + if (lookahead == 'g') ADVANCE(84); + END_STATE(); + case 50: + if (lookahead == 'd') ADVANCE(85); + END_STATE(); + case 51: + if (lookahead == 'n') ADVANCE(86); + END_STATE(); + case 52: + if (lookahead == 'a') ADVANCE(87); + END_STATE(); + case 53: + if (lookahead == 'l') ADVANCE(88); + END_STATE(); + case 54: + if (lookahead == 'e') ADVANCE(89); + END_STATE(); + case 55: + if (lookahead == 'p') ADVANCE(90); + END_STATE(); + case 56: + if (lookahead == 's') ADVANCE(91); + if (lookahead == 't') ADVANCE(92); + END_STATE(); + case 57: + if (lookahead == 'a') ADVANCE(93); + END_STATE(); + case 58: + if (lookahead == 'g') ADVANCE(94); + END_STATE(); + case 59: + if (lookahead == 'c') ADVANCE(95); + END_STATE(); + case 60: + if (lookahead == 'e') ADVANCE(96); + END_STATE(); + case 61: + if (lookahead == 'b') ADVANCE(97); + END_STATE(); + case 62: + if (lookahead == 's') ADVANCE(98); + END_STATE(); + case 63: + ACCEPT_TOKEN(anon_sym_for); + END_STATE(); + case 64: + if (lookahead == 'g') ADVANCE(99); + END_STATE(); + case 65: + if (lookahead == 'u') ADVANCE(100); + END_STATE(); + case 66: + if (lookahead == 'e') ADVANCE(101); + END_STATE(); + case 67: + if (lookahead == 'a') ADVANCE(102); + END_STATE(); + case 68: + ACCEPT_TOKEN(anon_sym_let); + END_STATE(); + case 69: + if (lookahead == 'a') ADVANCE(103); + END_STATE(); + case 70: + if (lookahead == 'p') ADVANCE(104); + END_STATE(); + case 71: + if (lookahead == 't') ADVANCE(105); + END_STATE(); + case 72: + if (lookahead == 'r') ADVANCE(106); + END_STATE(); + case 73: + if (lookahead == 'u') ADVANCE(107); + END_STATE(); + case 74: + if (lookahead == 'u') ADVANCE(108); + END_STATE(); + case 75: + if (lookahead == 'e') ADVANCE(109); + END_STATE(); + case 76: + if (lookahead == 'u') ADVANCE(110); + END_STATE(); + case 77: + if (lookahead == 't') ADVANCE(111); + END_STATE(); + case 78: + if (lookahead == 'e') ADVANCE(112); + END_STATE(); + case 79: + ACCEPT_TOKEN(anon_sym_var); + END_STATE(); + case 80: + if (lookahead == 't') ADVANCE(113); + END_STATE(); + case 81: + if (lookahead == 'l') ADVANCE(114); + END_STATE(); + case 82: + if (lookahead == 'k') ADVANCE(115); + END_STATE(); + case 83: + if (lookahead == 's') ADVANCE(116); + END_STATE(); + case 84: + if (lookahead == 'n') ADVANCE(117); + END_STATE(); + case 85: + if (lookahead == 'i') ADVANCE(118); + END_STATE(); + case 86: + if (lookahead == 'd') ADVANCE(119); + END_STATE(); + case 87: + if (lookahead == 'k') ADVANCE(120); + END_STATE(); + case 88: + if (lookahead == 't') ADVANCE(121); + END_STATE(); + case 89: + ACCEPT_TOKEN(anon_sym_case); + END_STATE(); + case 90: + if (lookahead == 'u') ADVANCE(122); + END_STATE(); + case 91: + if (lookahead == 't') ADVANCE(123); + END_STATE(); + case 92: + if (lookahead == 'i') ADVANCE(124); + END_STATE(); + case 93: + if (lookahead == 'u') ADVANCE(125); + END_STATE(); + case 94: + if (lookahead == 'n') ADVANCE(126); + END_STATE(); + case 95: + if (lookahead == 'a') ADVANCE(127); + END_STATE(); + case 96: + ACCEPT_TOKEN(anon_sym_else); + END_STATE(); + case 97: + if (lookahead == 'l') ADVANCE(128); + END_STATE(); + case 98: + if (lookahead == 'e') ADVANCE(129); + END_STATE(); + case 99: + if (lookahead == 'm') ADVANCE(130); + END_STATE(); + case 100: + if (lookahead == 'p') ADVANCE(131); + END_STATE(); + case 101: + if (lookahead == 'r') ADVANCE(132); + END_STATE(); + case 102: + if (lookahead == 'r') ADVANCE(133); + END_STATE(); + case 103: + if (lookahead == 't') ADVANCE(134); + END_STATE(); + case 104: + ACCEPT_TOKEN(anon_sym_loop); + END_STATE(); + case 105: + if (lookahead == '_') ADVANCE(135); + END_STATE(); + case 106: + if (lookahead == 'r') ADVANCE(136); + END_STATE(); + case 107: + if (lookahead == 'i') ADVANCE(137); + END_STATE(); + case 108: + if (lookahead == 'r') ADVANCE(138); + END_STATE(); + case 109: + ACCEPT_TOKEN(anon_sym_size); + END_STATE(); + case 110: + if (lookahead == 'c') ADVANCE(139); + END_STATE(); + case 111: + if (lookahead == 'c') ADVANCE(140); + END_STATE(); + case 112: + ACCEPT_TOKEN(anon_sym_true); + END_STATE(); + case 113: + if (lookahead == 'e') ADVANCE(141); + END_STATE(); + case 114: + if (lookahead == 'e') ADVANCE(142); + END_STATE(); + case 115: + if (lookahead == 'g') ADVANCE(143); + END_STATE(); + case 116: + ACCEPT_TOKEN(anon_sym_alias); + END_STATE(); + case 117: + ACCEPT_TOKEN(anon_sym_align); + END_STATE(); + case 118: + if (lookahead == 'n') ADVANCE(144); + END_STATE(); + case 119: + if (lookahead == '_') ADVANCE(145); + END_STATE(); + case 120: + ACCEPT_TOKEN(anon_sym_break); + END_STATE(); + case 121: + if (lookahead == 'i') ADVANCE(146); + END_STATE(); + case 122: + if (lookahead == 't') ADVANCE(147); + END_STATE(); + case 123: + ACCEPT_TOKEN(anon_sym_const); + if (lookahead == '_') ADVANCE(148); + END_STATE(); + case 124: + if (lookahead == 'n') ADVANCE(149); + END_STATE(); + case 125: + if (lookahead == 'l') ADVANCE(150); + END_STATE(); + case 126: + if (lookahead == 'o') ADVANCE(151); + END_STATE(); + case 127: + if (lookahead == 'r') ADVANCE(152); + END_STATE(); + case 128: + if (lookahead == 'e') ADVANCE(153); + END_STATE(); + case 129: + ACCEPT_TOKEN(anon_sym_false); + END_STATE(); + case 130: + if (lookahead == 'e') ADVANCE(154); + END_STATE(); + case 131: + ACCEPT_TOKEN(anon_sym_group); + END_STATE(); + case 132: + if (lookahead == 'p') ADVANCE(155); + END_STATE(); + case 133: + if (lookahead == 'i') ADVANCE(156); + END_STATE(); + case 134: + if (lookahead == 'i') ADVANCE(157); + END_STATE(); + case 135: + if (lookahead == 'u') ADVANCE(158); + END_STATE(); + case 136: + if (lookahead == 'i') ADVANCE(159); + END_STATE(); + case 137: + if (lookahead == 'r') ADVANCE(160); + END_STATE(); + case 138: + if (lookahead == 'n') ADVANCE(161); + END_STATE(); + case 139: + if (lookahead == 't') ADVANCE(162); + END_STATE(); + case 140: + if (lookahead == 'h') ADVANCE(163); + END_STATE(); + case 141: + if (lookahead == 'x') ADVANCE(164); + END_STATE(); + case 142: + ACCEPT_TOKEN(anon_sym_while); + END_STATE(); + case 143: + if (lookahead == 'r') ADVANCE(165); + END_STATE(); + case 144: + if (lookahead == 'g') ADVANCE(166); + END_STATE(); + case 145: + if (lookahead == 's') ADVANCE(167); + END_STATE(); + case 146: + if (lookahead == 'n') ADVANCE(168); + END_STATE(); + case 147: + if (lookahead == 'e') ADVANCE(169); + END_STATE(); + case 148: + if (lookahead == 'a') ADVANCE(170); + END_STATE(); + case 149: + if (lookahead == 'u') ADVANCE(171); + END_STATE(); + case 150: + if (lookahead == 't') ADVANCE(172); + END_STATE(); + case 151: + if (lookahead == 's') ADVANCE(173); + END_STATE(); + case 152: + if (lookahead == 'd') ADVANCE(174); + END_STATE(); + case 153: + ACCEPT_TOKEN(anon_sym_enable); + END_STATE(); + case 154: + if (lookahead == 'n') ADVANCE(175); + END_STATE(); + case 155: + if (lookahead == 'o') ADVANCE(176); + END_STATE(); + case 156: + if (lookahead == 'a') ADVANCE(177); + END_STATE(); + case 157: + if (lookahead == 'o') ADVANCE(178); + END_STATE(); + case 158: + if (lookahead == 's') ADVANCE(179); + END_STATE(); + case 159: + if (lookahead == 'd') ADVANCE(180); + END_STATE(); + case 160: + if (lookahead == 'e') ADVANCE(181); + END_STATE(); + case 161: + ACCEPT_TOKEN(anon_sym_return); + END_STATE(); + case 162: + ACCEPT_TOKEN(anon_sym_struct); + END_STATE(); + case 163: + ACCEPT_TOKEN(anon_sym_switch); + END_STATE(); + case 164: + ACCEPT_TOKEN(anon_sym_vertex); + END_STATE(); + case 165: + if (lookahead == 'o') ADVANCE(182); + END_STATE(); + case 166: + ACCEPT_TOKEN(anon_sym_binding); + END_STATE(); + case 167: + if (lookahead == 'r') ADVANCE(183); + END_STATE(); + case 168: + ACCEPT_TOKEN(anon_sym_builtin); + END_STATE(); + case 169: + ACCEPT_TOKEN(anon_sym_compute); + END_STATE(); + case 170: + if (lookahead == 's') ADVANCE(184); + END_STATE(); + case 171: + if (lookahead == 'e') ADVANCE(185); + if (lookahead == 'i') ADVANCE(186); + END_STATE(); + case 172: + ACCEPT_TOKEN(anon_sym_default); + END_STATE(); + case 173: + if (lookahead == 't') ADVANCE(187); + END_STATE(); + case 174: + ACCEPT_TOKEN(anon_sym_discard); + END_STATE(); + case 175: + if (lookahead == 't') ADVANCE(188); + END_STATE(); + case 176: + if (lookahead == 'l') ADVANCE(189); + END_STATE(); + case 177: + if (lookahead == 'n') ADVANCE(190); + END_STATE(); + case 178: + if (lookahead == 'n') ADVANCE(191); + END_STATE(); + case 179: + if (lookahead == 'e') ADVANCE(192); + END_STATE(); + case 180: + if (lookahead == 'e') ADVANCE(193); + END_STATE(); + case 181: + if (lookahead == 's') ADVANCE(194); + END_STATE(); + case 182: + if (lookahead == 'u') ADVANCE(195); + END_STATE(); + case 183: + if (lookahead == 'c') ADVANCE(196); + END_STATE(); + case 184: + if (lookahead == 's') ADVANCE(197); + END_STATE(); + case 185: + ACCEPT_TOKEN(sym_continue_statement); + END_STATE(); + case 186: + if (lookahead == 'n') ADVANCE(198); + END_STATE(); + case 187: + if (lookahead == 'i') ADVANCE(199); + END_STATE(); + case 188: + ACCEPT_TOKEN(anon_sym_fragment); + END_STATE(); + case 189: + if (lookahead == 'a') ADVANCE(200); + END_STATE(); + case 190: + if (lookahead == 't') ADVANCE(201); + END_STATE(); + case 191: + ACCEPT_TOKEN(anon_sym_location); + END_STATE(); + case 192: + ACCEPT_TOKEN(anon_sym_must_use); + END_STATE(); + case 193: + ACCEPT_TOKEN(anon_sym_override); + END_STATE(); + case 194: + ACCEPT_TOKEN(anon_sym_requires); + END_STATE(); + case 195: + if (lookahead == 'p') ADVANCE(202); + END_STATE(); + case 196: + ACCEPT_TOKEN(anon_sym_blend_src); + END_STATE(); + case 197: + if (lookahead == 'e') ADVANCE(203); + END_STATE(); + case 198: + if (lookahead == 'g') ADVANCE(204); + END_STATE(); + case 199: + if (lookahead == 'c') ADVANCE(205); + END_STATE(); + case 200: + if (lookahead == 't') ADVANCE(206); + END_STATE(); + case 201: + ACCEPT_TOKEN(anon_sym_invariant); + END_STATE(); + case 202: + if (lookahead == '_') ADVANCE(207); + END_STATE(); + case 203: + if (lookahead == 'r') ADVANCE(208); + END_STATE(); + case 204: + ACCEPT_TOKEN(anon_sym_continuing); + END_STATE(); + case 205: + ACCEPT_TOKEN(anon_sym_diagnostic); + END_STATE(); + case 206: + if (lookahead == 'e') ADVANCE(209); + END_STATE(); + case 207: + if (lookahead == 's') ADVANCE(210); + END_STATE(); + case 208: + if (lookahead == 't') ADVANCE(211); + END_STATE(); + case 209: + ACCEPT_TOKEN(anon_sym_interpolate); + END_STATE(); + case 210: + if (lookahead == 'i') ADVANCE(212); + END_STATE(); + case 211: + ACCEPT_TOKEN(anon_sym_const_assert); + END_STATE(); + case 212: + if (lookahead == 'z') ADVANCE(213); + END_STATE(); + case 213: + if (lookahead == 'e') ADVANCE(214); + END_STATE(); + case 214: + ACCEPT_TOKEN(anon_sym_workgroup_size); + END_STATE(); + default: + return false; + } +} + +static const TSLexMode ts_lex_modes[STATE_COUNT] = { + [0] = {.lex_state = 0, .external_lex_state = 1}, + [1] = {.lex_state = 0, .external_lex_state = 2}, + [2] = {.lex_state = 31, .external_lex_state = 2}, + [3] = {.lex_state = 31, .external_lex_state = 2}, + [4] = {.lex_state = 31, .external_lex_state = 2}, + [5] = {.lex_state = 31, .external_lex_state = 2}, + [6] = {.lex_state = 31, .external_lex_state = 2}, + [7] = {.lex_state = 31, .external_lex_state = 2}, + [8] = {.lex_state = 31, .external_lex_state = 2}, + [9] = {.lex_state = 31, .external_lex_state = 2}, + [10] = {.lex_state = 31, .external_lex_state = 2}, + [11] = {.lex_state = 31, .external_lex_state = 2}, + [12] = {.lex_state = 31, .external_lex_state = 2}, + [13] = {.lex_state = 31, .external_lex_state = 2}, + [14] = {.lex_state = 31, .external_lex_state = 2}, + [15] = {.lex_state = 31, .external_lex_state = 2}, + [16] = {.lex_state = 31, .external_lex_state = 2}, + [17] = {.lex_state = 31, .external_lex_state = 2}, + [18] = {.lex_state = 31, .external_lex_state = 2}, + [19] = {.lex_state = 31, .external_lex_state = 2}, + [20] = {.lex_state = 31, .external_lex_state = 2}, + [21] = {.lex_state = 31, .external_lex_state = 2}, + [22] = {.lex_state = 31, .external_lex_state = 2}, + [23] = {.lex_state = 31, .external_lex_state = 2}, + [24] = {.lex_state = 31, .external_lex_state = 2}, + [25] = {.lex_state = 31, .external_lex_state = 2}, + [26] = {.lex_state = 31, .external_lex_state = 2}, + [27] = {.lex_state = 31, .external_lex_state = 2}, + [28] = {.lex_state = 31, .external_lex_state = 2}, + [29] = {.lex_state = 31, .external_lex_state = 2}, + [30] = {.lex_state = 31, .external_lex_state = 2}, + [31] = {.lex_state = 31, .external_lex_state = 3}, + [32] = {.lex_state = 31, .external_lex_state = 2}, + [33] = {.lex_state = 31, .external_lex_state = 2}, + [34] = {.lex_state = 31, .external_lex_state = 2}, + [35] = {.lex_state = 31, .external_lex_state = 2}, + [36] = {.lex_state = 31, .external_lex_state = 2}, + [37] = {.lex_state = 31, .external_lex_state = 2}, + [38] = {.lex_state = 31, .external_lex_state = 2}, + [39] = {.lex_state = 31, .external_lex_state = 3}, + [40] = {.lex_state = 31, .external_lex_state = 2}, + [41] = {.lex_state = 31, .external_lex_state = 2}, + [42] = {.lex_state = 31, .external_lex_state = 2}, + [43] = {.lex_state = 31, .external_lex_state = 2}, + [44] = {.lex_state = 31, .external_lex_state = 2}, + [45] = {.lex_state = 31, .external_lex_state = 2}, + [46] = {.lex_state = 31, .external_lex_state = 2}, + [47] = {.lex_state = 31, .external_lex_state = 2}, + [48] = {.lex_state = 31, .external_lex_state = 2}, + [49] = {.lex_state = 31, .external_lex_state = 2}, + [50] = {.lex_state = 31, .external_lex_state = 2}, + [51] = {.lex_state = 31, .external_lex_state = 2}, + [52] = {.lex_state = 31, .external_lex_state = 2}, + [53] = {.lex_state = 31, .external_lex_state = 2}, + [54] = {.lex_state = 31, .external_lex_state = 2}, + [55] = {.lex_state = 0, .external_lex_state = 2}, + [56] = {.lex_state = 31, .external_lex_state = 2}, + [57] = {.lex_state = 31, .external_lex_state = 2}, + [58] = {.lex_state = 31, .external_lex_state = 2}, + [59] = {.lex_state = 31, .external_lex_state = 2}, + [60] = {.lex_state = 31, .external_lex_state = 2}, + [61] = {.lex_state = 31, .external_lex_state = 2}, + [62] = {.lex_state = 31, .external_lex_state = 2}, + [63] = {.lex_state = 31, .external_lex_state = 2}, + [64] = {.lex_state = 31, .external_lex_state = 2}, + [65] = {.lex_state = 31, .external_lex_state = 2}, + [66] = {.lex_state = 31, .external_lex_state = 2}, + [67] = {.lex_state = 31, .external_lex_state = 2}, + [68] = {.lex_state = 31, .external_lex_state = 2}, + [69] = {.lex_state = 31, .external_lex_state = 2}, + [70] = {.lex_state = 31, .external_lex_state = 2}, + [71] = {.lex_state = 31, .external_lex_state = 2}, + [72] = {.lex_state = 31, .external_lex_state = 2}, + [73] = {.lex_state = 31, .external_lex_state = 2}, + [74] = {.lex_state = 31, .external_lex_state = 2}, + [75] = {.lex_state = 31, .external_lex_state = 2}, + [76] = {.lex_state = 31, .external_lex_state = 2}, + [77] = {.lex_state = 31, .external_lex_state = 2}, + [78] = {.lex_state = 31, .external_lex_state = 2}, + [79] = {.lex_state = 31, .external_lex_state = 2}, + [80] = {.lex_state = 31, .external_lex_state = 2}, + [81] = {.lex_state = 31, .external_lex_state = 2}, + [82] = {.lex_state = 31, .external_lex_state = 2}, + [83] = {.lex_state = 31, .external_lex_state = 2}, + [84] = {.lex_state = 31, .external_lex_state = 2}, + [85] = {.lex_state = 31, .external_lex_state = 2}, + [86] = {.lex_state = 31, .external_lex_state = 2}, + [87] = {.lex_state = 31, .external_lex_state = 2}, + [88] = {.lex_state = 31, .external_lex_state = 2}, + [89] = {.lex_state = 31, .external_lex_state = 2}, + [90] = {.lex_state = 31, .external_lex_state = 2}, + [91] = {.lex_state = 31, .external_lex_state = 2}, + [92] = {.lex_state = 31, .external_lex_state = 2}, + [93] = {.lex_state = 31, .external_lex_state = 2}, + [94] = {.lex_state = 31, .external_lex_state = 2}, + [95] = {.lex_state = 31, .external_lex_state = 2}, + [96] = {.lex_state = 31, .external_lex_state = 2}, + [97] = {.lex_state = 31, .external_lex_state = 2}, + [98] = {.lex_state = 31, .external_lex_state = 2}, + [99] = {.lex_state = 31, .external_lex_state = 2}, + [100] = {.lex_state = 31, .external_lex_state = 2}, + [101] = {.lex_state = 0, .external_lex_state = 2}, + [102] = {.lex_state = 0, .external_lex_state = 2}, + [103] = {.lex_state = 31, .external_lex_state = 2}, + [104] = {.lex_state = 31, .external_lex_state = 2}, + [105] = {.lex_state = 0, .external_lex_state = 2}, + [106] = {.lex_state = 31, .external_lex_state = 2}, + [107] = {.lex_state = 31, .external_lex_state = 2}, + [108] = {.lex_state = 31, .external_lex_state = 2}, + [109] = {.lex_state = 31, .external_lex_state = 2}, + [110] = {.lex_state = 31, .external_lex_state = 2}, + [111] = {.lex_state = 31, .external_lex_state = 2}, + [112] = {.lex_state = 31, .external_lex_state = 2}, + [113] = {.lex_state = 31, .external_lex_state = 2}, + [114] = {.lex_state = 31, .external_lex_state = 2}, + [115] = {.lex_state = 31, .external_lex_state = 2}, + [116] = {.lex_state = 31, .external_lex_state = 2}, + [117] = {.lex_state = 31, .external_lex_state = 2}, + [118] = {.lex_state = 31, .external_lex_state = 2}, + [119] = {.lex_state = 31, .external_lex_state = 2}, + [120] = {.lex_state = 31, .external_lex_state = 2}, + [121] = {.lex_state = 31, .external_lex_state = 2}, + [122] = {.lex_state = 31, .external_lex_state = 2}, + [123] = {.lex_state = 31, .external_lex_state = 2}, + [124] = {.lex_state = 31, .external_lex_state = 2}, + [125] = {.lex_state = 31, .external_lex_state = 2}, + [126] = {.lex_state = 31, .external_lex_state = 2}, + [127] = {.lex_state = 31, .external_lex_state = 2}, + [128] = {.lex_state = 31, .external_lex_state = 2}, + [129] = {.lex_state = 31, .external_lex_state = 2}, + [130] = {.lex_state = 31, .external_lex_state = 2}, + [131] = {.lex_state = 31, .external_lex_state = 2}, + [132] = {.lex_state = 31, .external_lex_state = 2}, + [133] = {.lex_state = 31, .external_lex_state = 2}, + [134] = {.lex_state = 31, .external_lex_state = 2}, + [135] = {.lex_state = 31, .external_lex_state = 2}, + [136] = {.lex_state = 31, .external_lex_state = 2}, + [137] = {.lex_state = 31, .external_lex_state = 2}, + [138] = {.lex_state = 31, .external_lex_state = 2}, + [139] = {.lex_state = 31, .external_lex_state = 2}, + [140] = {.lex_state = 31, .external_lex_state = 2}, + [141] = {.lex_state = 31, .external_lex_state = 2}, + [142] = {.lex_state = 31, .external_lex_state = 2}, + [143] = {.lex_state = 31, .external_lex_state = 2}, + [144] = {.lex_state = 31, .external_lex_state = 2}, + [145] = {.lex_state = 1, .external_lex_state = 4}, + [146] = {.lex_state = 0, .external_lex_state = 2}, + [147] = {.lex_state = 1, .external_lex_state = 5}, + [148] = {.lex_state = 1, .external_lex_state = 5}, + [149] = {.lex_state = 1, .external_lex_state = 5}, + [150] = {.lex_state = 1, .external_lex_state = 5}, + [151] = {.lex_state = 1, .external_lex_state = 5}, + [152] = {.lex_state = 1, .external_lex_state = 5}, + [153] = {.lex_state = 1, .external_lex_state = 5}, + [154] = {.lex_state = 1, .external_lex_state = 5}, + [155] = {.lex_state = 1, .external_lex_state = 5}, + [156] = {.lex_state = 1, .external_lex_state = 5}, + [157] = {.lex_state = 1, .external_lex_state = 5}, + [158] = {.lex_state = 1, .external_lex_state = 5}, + [159] = {.lex_state = 1, .external_lex_state = 5}, + [160] = {.lex_state = 2, .external_lex_state = 2}, + [161] = {.lex_state = 1, .external_lex_state = 5}, + [162] = {.lex_state = 1, .external_lex_state = 5}, + [163] = {.lex_state = 1, .external_lex_state = 5}, + [164] = {.lex_state = 1, .external_lex_state = 5}, + [165] = {.lex_state = 1, .external_lex_state = 5}, + [166] = {.lex_state = 1, .external_lex_state = 5}, + [167] = {.lex_state = 31, .external_lex_state = 2}, + [168] = {.lex_state = 0, .external_lex_state = 2}, + [169] = {.lex_state = 2, .external_lex_state = 2}, + [170] = {.lex_state = 31, .external_lex_state = 2}, + [171] = {.lex_state = 31, .external_lex_state = 2}, + [172] = {.lex_state = 31, .external_lex_state = 2}, + [173] = {.lex_state = 1, .external_lex_state = 5}, + [174] = {.lex_state = 1, .external_lex_state = 5}, + [175] = {.lex_state = 31, .external_lex_state = 2}, + [176] = {.lex_state = 0, .external_lex_state = 2}, + [177] = {.lex_state = 0, .external_lex_state = 2}, + [178] = {.lex_state = 1, .external_lex_state = 6}, + [179] = {.lex_state = 1, .external_lex_state = 5}, + [180] = {.lex_state = 1, .external_lex_state = 5}, + [181] = {.lex_state = 1, .external_lex_state = 5}, + [182] = {.lex_state = 1, .external_lex_state = 5}, + [183] = {.lex_state = 1, .external_lex_state = 5}, + [184] = {.lex_state = 1, .external_lex_state = 5}, + [185] = {.lex_state = 1, .external_lex_state = 7}, + [186] = {.lex_state = 0, .external_lex_state = 2}, + [187] = {.lex_state = 31, .external_lex_state = 2}, + [188] = {.lex_state = 1, .external_lex_state = 8}, + [189] = {.lex_state = 1, .external_lex_state = 9}, + [190] = {.lex_state = 0, .external_lex_state = 2}, + [191] = {.lex_state = 31, .external_lex_state = 2}, + [192] = {.lex_state = 0, .external_lex_state = 2}, + [193] = {.lex_state = 0, .external_lex_state = 2}, + [194] = {.lex_state = 31, .external_lex_state = 2}, + [195] = {.lex_state = 1, .external_lex_state = 9}, + [196] = {.lex_state = 0, .external_lex_state = 2}, + [197] = {.lex_state = 31, .external_lex_state = 2}, + [198] = {.lex_state = 31, .external_lex_state = 2}, + [199] = {.lex_state = 31, .external_lex_state = 2}, + [200] = {.lex_state = 2, .external_lex_state = 10}, + [201] = {.lex_state = 31, .external_lex_state = 2}, + [202] = {.lex_state = 0, .external_lex_state = 2}, + [203] = {.lex_state = 31, .external_lex_state = 2}, + [204] = {.lex_state = 0, .external_lex_state = 2}, + [205] = {.lex_state = 0, .external_lex_state = 2}, + [206] = {.lex_state = 0, .external_lex_state = 2}, + [207] = {.lex_state = 1, .external_lex_state = 8}, + [208] = {.lex_state = 0, .external_lex_state = 2}, + [209] = {.lex_state = 1, .external_lex_state = 8}, + [210] = {.lex_state = 31, .external_lex_state = 2}, + [211] = {.lex_state = 31, .external_lex_state = 2}, + [212] = {.lex_state = 31, .external_lex_state = 2}, + [213] = {.lex_state = 1, .external_lex_state = 8}, + [214] = {.lex_state = 0, .external_lex_state = 2}, + [215] = {.lex_state = 1, .external_lex_state = 8}, + [216] = {.lex_state = 31, .external_lex_state = 2}, + [217] = {.lex_state = 1, .external_lex_state = 8}, + [218] = {.lex_state = 31, .external_lex_state = 2}, + [219] = {.lex_state = 31, .external_lex_state = 2}, + [220] = {.lex_state = 31, .external_lex_state = 2}, + [221] = {.lex_state = 1, .external_lex_state = 9}, + [222] = {.lex_state = 0, .external_lex_state = 2}, + [223] = {.lex_state = 31, .external_lex_state = 2}, + [224] = {.lex_state = 1, .external_lex_state = 9}, + [225] = {.lex_state = 31, .external_lex_state = 2}, + [226] = {.lex_state = 0, .external_lex_state = 2}, + [227] = {.lex_state = 31, .external_lex_state = 2}, + [228] = {.lex_state = 1, .external_lex_state = 9}, + [229] = {.lex_state = 31, .external_lex_state = 2}, + [230] = {.lex_state = 31, .external_lex_state = 2}, + [231] = {.lex_state = 31, .external_lex_state = 2}, + [232] = {.lex_state = 0, .external_lex_state = 2}, + [233] = {.lex_state = 1, .external_lex_state = 9}, + [234] = {.lex_state = 31, .external_lex_state = 2}, + [235] = {.lex_state = 31, .external_lex_state = 2}, + [236] = {.lex_state = 1, .external_lex_state = 9}, + [237] = {.lex_state = 1, .external_lex_state = 9}, + [238] = {.lex_state = 0, .external_lex_state = 2}, + [239] = {.lex_state = 0, .external_lex_state = 2}, + [240] = {.lex_state = 1, .external_lex_state = 5}, + [241] = {.lex_state = 0, .external_lex_state = 2}, + [242] = {.lex_state = 1, .external_lex_state = 9}, + [243] = {.lex_state = 1, .external_lex_state = 9}, + [244] = {.lex_state = 1, .external_lex_state = 9}, + [245] = {.lex_state = 1, .external_lex_state = 9}, + [246] = {.lex_state = 0, .external_lex_state = 2}, + [247] = {.lex_state = 1, .external_lex_state = 9}, + [248] = {.lex_state = 0, .external_lex_state = 2}, + [249] = {.lex_state = 1, .external_lex_state = 9}, + [250] = {.lex_state = 1, .external_lex_state = 9}, + [251] = {.lex_state = 2, .external_lex_state = 2}, + [252] = {.lex_state = 1, .external_lex_state = 9}, + [253] = {.lex_state = 0, .external_lex_state = 2}, + [254] = {.lex_state = 0, .external_lex_state = 2}, + [255] = {.lex_state = 0, .external_lex_state = 2}, + [256] = {.lex_state = 0, .external_lex_state = 2}, + [257] = {.lex_state = 1, .external_lex_state = 8}, + [258] = {.lex_state = 1, .external_lex_state = 8}, + [259] = {.lex_state = 0, .external_lex_state = 2}, + [260] = {.lex_state = 1, .external_lex_state = 9}, + [261] = {.lex_state = 0, .external_lex_state = 2}, + [262] = {.lex_state = 1, .external_lex_state = 8}, + [263] = {.lex_state = 1, .external_lex_state = 9}, + [264] = {.lex_state = 0, .external_lex_state = 2}, + [265] = {.lex_state = 1, .external_lex_state = 9}, + [266] = {.lex_state = 1, .external_lex_state = 8}, + [267] = {.lex_state = 1, .external_lex_state = 8}, + [268] = {.lex_state = 1, .external_lex_state = 9}, + [269] = {.lex_state = 1, .external_lex_state = 9}, + [270] = {.lex_state = 1, .external_lex_state = 8}, + [271] = {.lex_state = 1, .external_lex_state = 8}, + [272] = {.lex_state = 1, .external_lex_state = 8}, + [273] = {.lex_state = 1, .external_lex_state = 8}, + [274] = {.lex_state = 1, .external_lex_state = 8}, + [275] = {.lex_state = 0, .external_lex_state = 2}, + [276] = {.lex_state = 1, .external_lex_state = 8}, + [277] = {.lex_state = 0, .external_lex_state = 2}, + [278] = {.lex_state = 1, .external_lex_state = 8}, + [279] = {.lex_state = 1, .external_lex_state = 8}, + [280] = {.lex_state = 1, .external_lex_state = 8}, + [281] = {.lex_state = 0, .external_lex_state = 2}, + [282] = {.lex_state = 1, .external_lex_state = 8}, + [283] = {.lex_state = 1, .external_lex_state = 8}, + [284] = {.lex_state = 0, .external_lex_state = 2}, + [285] = {.lex_state = 0, .external_lex_state = 2}, + [286] = {.lex_state = 1, .external_lex_state = 11}, + [287] = {.lex_state = 1, .external_lex_state = 8}, + [288] = {.lex_state = 0, .external_lex_state = 2}, + [289] = {.lex_state = 0, .external_lex_state = 2}, + [290] = {.lex_state = 0, .external_lex_state = 2}, + [291] = {.lex_state = 0, .external_lex_state = 2}, + [292] = {.lex_state = 0, .external_lex_state = 2}, + [293] = {.lex_state = 2, .external_lex_state = 2}, + [294] = {.lex_state = 1, .external_lex_state = 9}, + [295] = {.lex_state = 1, .external_lex_state = 12}, + [296] = {.lex_state = 31, .external_lex_state = 2}, + [297] = {.lex_state = 1, .external_lex_state = 13}, + [298] = {.lex_state = 31, .external_lex_state = 2}, + [299] = {.lex_state = 1, .external_lex_state = 9}, + [300] = {.lex_state = 31, .external_lex_state = 2}, + [301] = {.lex_state = 1, .external_lex_state = 8}, + [302] = {.lex_state = 2, .external_lex_state = 2}, + [303] = {.lex_state = 1, .external_lex_state = 8}, + [304] = {.lex_state = 1, .external_lex_state = 8}, + [305] = {.lex_state = 1, .external_lex_state = 9}, + [306] = {.lex_state = 1, .external_lex_state = 8}, + [307] = {.lex_state = 1, .external_lex_state = 8}, + [308] = {.lex_state = 1, .external_lex_state = 8}, + [309] = {.lex_state = 1, .external_lex_state = 8}, + [310] = {.lex_state = 1, .external_lex_state = 9}, + [311] = {.lex_state = 1, .external_lex_state = 9}, + [312] = {.lex_state = 1, .external_lex_state = 9}, + [313] = {.lex_state = 1, .external_lex_state = 13}, + [314] = {.lex_state = 1, .external_lex_state = 13}, + [315] = {.lex_state = 1, .external_lex_state = 13}, + [316] = {.lex_state = 1, .external_lex_state = 13}, + [317] = {.lex_state = 2, .external_lex_state = 2}, + [318] = {.lex_state = 2, .external_lex_state = 2}, + [319] = {.lex_state = 1, .external_lex_state = 10}, + [320] = {.lex_state = 2, .external_lex_state = 2}, + [321] = {.lex_state = 1, .external_lex_state = 14}, + [322] = {.lex_state = 1, .external_lex_state = 13}, + [323] = {.lex_state = 2, .external_lex_state = 2}, + [324] = {.lex_state = 2, .external_lex_state = 2}, + [325] = {.lex_state = 2, .external_lex_state = 2}, + [326] = {.lex_state = 2, .external_lex_state = 2}, + [327] = {.lex_state = 0, .external_lex_state = 2}, + [328] = {.lex_state = 2, .external_lex_state = 2}, + [329] = {.lex_state = 1, .external_lex_state = 13}, + [330] = {.lex_state = 0, .external_lex_state = 2}, + [331] = {.lex_state = 1, .external_lex_state = 13}, + [332] = {.lex_state = 2, .external_lex_state = 2}, + [333] = {.lex_state = 1, .external_lex_state = 2}, + [334] = {.lex_state = 1, .external_lex_state = 14}, + [335] = {.lex_state = 1, .external_lex_state = 8}, + [336] = {.lex_state = 2, .external_lex_state = 2}, + [337] = {.lex_state = 1, .external_lex_state = 13}, + [338] = {.lex_state = 2, .external_lex_state = 2}, + [339] = {.lex_state = 2, .external_lex_state = 2}, + [340] = {.lex_state = 2, .external_lex_state = 2}, + [341] = {.lex_state = 3, .external_lex_state = 15}, + [342] = {.lex_state = 1, .external_lex_state = 13}, + [343] = {.lex_state = 1, .external_lex_state = 13}, + [344] = {.lex_state = 1, .external_lex_state = 14}, + [345] = {.lex_state = 1, .external_lex_state = 13}, + [346] = {.lex_state = 1, .external_lex_state = 13}, + [347] = {.lex_state = 1, .external_lex_state = 13}, + [348] = {.lex_state = 1, .external_lex_state = 13}, + [349] = {.lex_state = 1, .external_lex_state = 13}, + [350] = {.lex_state = 1, .external_lex_state = 13}, + [351] = {.lex_state = 1, .external_lex_state = 13}, + [352] = {.lex_state = 1, .external_lex_state = 13}, + [353] = {.lex_state = 2, .external_lex_state = 2}, + [354] = {.lex_state = 2, .external_lex_state = 2}, + [355] = {.lex_state = 1, .external_lex_state = 14}, + [356] = {.lex_state = 1, .external_lex_state = 14}, + [357] = {.lex_state = 2, .external_lex_state = 2}, + [358] = {.lex_state = 1, .external_lex_state = 13}, + [359] = {.lex_state = 1, .external_lex_state = 13}, + [360] = {.lex_state = 1, .external_lex_state = 14}, + [361] = {.lex_state = 1, .external_lex_state = 14}, + [362] = {.lex_state = 1, .external_lex_state = 14}, + [363] = {.lex_state = 31, .external_lex_state = 2}, + [364] = {.lex_state = 1, .external_lex_state = 14}, + [365] = {.lex_state = 1, .external_lex_state = 14}, + [366] = {.lex_state = 1, .external_lex_state = 14}, + [367] = {.lex_state = 1, .external_lex_state = 14}, + [368] = {.lex_state = 31, .external_lex_state = 2}, + [369] = {.lex_state = 1, .external_lex_state = 9}, + [370] = {.lex_state = 1, .external_lex_state = 14}, + [371] = {.lex_state = 1, .external_lex_state = 14}, + [372] = {.lex_state = 1, .external_lex_state = 14}, + [373] = {.lex_state = 1, .external_lex_state = 2}, + [374] = {.lex_state = 1, .external_lex_state = 14}, + [375] = {.lex_state = 1, .external_lex_state = 2}, + [376] = {.lex_state = 1, .external_lex_state = 2}, + [377] = {.lex_state = 1, .external_lex_state = 14}, + [378] = {.lex_state = 1, .external_lex_state = 14}, + [379] = {.lex_state = 1, .external_lex_state = 2}, + [380] = {.lex_state = 1, .external_lex_state = 14}, + [381] = {.lex_state = 1, .external_lex_state = 2}, + [382] = {.lex_state = 1, .external_lex_state = 14}, + [383] = {.lex_state = 31, .external_lex_state = 2}, + [384] = {.lex_state = 1, .external_lex_state = 14}, + [385] = {.lex_state = 31, .external_lex_state = 2}, + [386] = {.lex_state = 1, .external_lex_state = 2}, + [387] = {.lex_state = 31, .external_lex_state = 2}, + [388] = {.lex_state = 1, .external_lex_state = 14}, + [389] = {.lex_state = 3, .external_lex_state = 16}, + [390] = {.lex_state = 1, .external_lex_state = 2}, + [391] = {.lex_state = 1, .external_lex_state = 2}, + [392] = {.lex_state = 3, .external_lex_state = 16}, + [393] = {.lex_state = 1, .external_lex_state = 2}, + [394] = {.lex_state = 1, .external_lex_state = 2}, + [395] = {.lex_state = 1, .external_lex_state = 2}, + [396] = {.lex_state = 1, .external_lex_state = 2}, + [397] = {.lex_state = 1, .external_lex_state = 14}, + [398] = {.lex_state = 1, .external_lex_state = 2}, + [399] = {.lex_state = 1, .external_lex_state = 2}, + [400] = {.lex_state = 1, .external_lex_state = 2}, + [401] = {.lex_state = 1, .external_lex_state = 2}, + [402] = {.lex_state = 1, .external_lex_state = 2}, + [403] = {.lex_state = 1, .external_lex_state = 13}, + [404] = {.lex_state = 1, .external_lex_state = 13}, + [405] = {.lex_state = 1, .external_lex_state = 17}, + [406] = {.lex_state = 3, .external_lex_state = 16}, + [407] = {.lex_state = 1, .external_lex_state = 2}, + [408] = {.lex_state = 1, .external_lex_state = 13}, + [409] = {.lex_state = 1, .external_lex_state = 13}, + [410] = {.lex_state = 1, .external_lex_state = 13}, + [411] = {.lex_state = 1, .external_lex_state = 2}, + [412] = {.lex_state = 31, .external_lex_state = 2}, + [413] = {.lex_state = 1, .external_lex_state = 13}, + [414] = {.lex_state = 1, .external_lex_state = 2}, + [415] = {.lex_state = 31, .external_lex_state = 2}, + [416] = {.lex_state = 31, .external_lex_state = 2}, + [417] = {.lex_state = 2, .external_lex_state = 18}, + [418] = {.lex_state = 3, .external_lex_state = 16}, + [419] = {.lex_state = 1, .external_lex_state = 14}, + [420] = {.lex_state = 1, .external_lex_state = 14}, + [421] = {.lex_state = 1, .external_lex_state = 2}, + [422] = {.lex_state = 1, .external_lex_state = 14}, + [423] = {.lex_state = 1, .external_lex_state = 8}, + [424] = {.lex_state = 1, .external_lex_state = 14}, + [425] = {.lex_state = 1, .external_lex_state = 19}, + [426] = {.lex_state = 1, .external_lex_state = 2}, + [427] = {.lex_state = 3, .external_lex_state = 16}, + [428] = {.lex_state = 31, .external_lex_state = 13}, + [429] = {.lex_state = 1, .external_lex_state = 14}, + [430] = {.lex_state = 3, .external_lex_state = 16}, + [431] = {.lex_state = 1, .external_lex_state = 14}, + [432] = {.lex_state = 3, .external_lex_state = 16}, + [433] = {.lex_state = 1, .external_lex_state = 8}, + [434] = {.lex_state = 1, .external_lex_state = 14}, + [435] = {.lex_state = 2, .external_lex_state = 3}, + [436] = {.lex_state = 1, .external_lex_state = 2}, + [437] = {.lex_state = 3, .external_lex_state = 16}, + [438] = {.lex_state = 1, .external_lex_state = 19}, + [439] = {.lex_state = 1, .external_lex_state = 8}, + [440] = {.lex_state = 2, .external_lex_state = 3}, + [441] = {.lex_state = 1, .external_lex_state = 2}, + [442] = {.lex_state = 1, .external_lex_state = 19}, + [443] = {.lex_state = 1, .external_lex_state = 2}, + [444] = {.lex_state = 2, .external_lex_state = 3}, + [445] = {.lex_state = 2, .external_lex_state = 3}, + [446] = {.lex_state = 2, .external_lex_state = 3}, + [447] = {.lex_state = 31, .external_lex_state = 2}, + [448] = {.lex_state = 1, .external_lex_state = 2}, + [449] = {.lex_state = 1, .external_lex_state = 18}, + [450] = {.lex_state = 31, .external_lex_state = 2}, + [451] = {.lex_state = 1, .external_lex_state = 19}, + [452] = {.lex_state = 2, .external_lex_state = 3}, + [453] = {.lex_state = 1, .external_lex_state = 2}, + [454] = {.lex_state = 1, .external_lex_state = 2}, + [455] = {.lex_state = 1, .external_lex_state = 2}, + [456] = {.lex_state = 1, .external_lex_state = 19}, + [457] = {.lex_state = 1, .external_lex_state = 19}, + [458] = {.lex_state = 1, .external_lex_state = 19}, + [459] = {.lex_state = 1, .external_lex_state = 14}, + [460] = {.lex_state = 1, .external_lex_state = 19}, + [461] = {.lex_state = 1, .external_lex_state = 19}, + [462] = {.lex_state = 3, .external_lex_state = 16}, + [463] = {.lex_state = 0, .external_lex_state = 2}, + [464] = {.lex_state = 1, .external_lex_state = 19}, + [465] = {.lex_state = 1, .external_lex_state = 19}, + [466] = {.lex_state = 1, .external_lex_state = 3}, + [467] = {.lex_state = 2, .external_lex_state = 3}, + [468] = {.lex_state = 2, .external_lex_state = 3}, + [469] = {.lex_state = 1, .external_lex_state = 19}, + [470] = {.lex_state = 2, .external_lex_state = 3}, + [471] = {.lex_state = 2, .external_lex_state = 3}, + [472] = {.lex_state = 2, .external_lex_state = 3}, + [473] = {.lex_state = 0, .external_lex_state = 2}, + [474] = {.lex_state = 2, .external_lex_state = 3}, + [475] = {.lex_state = 2, .external_lex_state = 3}, + [476] = {.lex_state = 0, .external_lex_state = 2}, + [477] = {.lex_state = 1, .external_lex_state = 19}, + [478] = {.lex_state = 1, .external_lex_state = 19}, + [479] = {.lex_state = 0, .external_lex_state = 2}, + [480] = {.lex_state = 2, .external_lex_state = 3}, + [481] = {.lex_state = 1, .external_lex_state = 19}, + [482] = {.lex_state = 2, .external_lex_state = 3}, + [483] = {.lex_state = 3, .external_lex_state = 16}, + [484] = {.lex_state = 1, .external_lex_state = 19}, + [485] = {.lex_state = 1, .external_lex_state = 19}, + [486] = {.lex_state = 1, .external_lex_state = 19}, + [487] = {.lex_state = 1, .external_lex_state = 19}, + [488] = {.lex_state = 2, .external_lex_state = 3}, + [489] = {.lex_state = 2, .external_lex_state = 3}, + [490] = {.lex_state = 0, .external_lex_state = 2}, + [491] = {.lex_state = 1, .external_lex_state = 19}, + [492] = {.lex_state = 3, .external_lex_state = 16}, + [493] = {.lex_state = 2, .external_lex_state = 3}, + [494] = {.lex_state = 2, .external_lex_state = 3}, + [495] = {.lex_state = 2, .external_lex_state = 3}, + [496] = {.lex_state = 2, .external_lex_state = 3}, + [497] = {.lex_state = 1, .external_lex_state = 19}, + [498] = {.lex_state = 1, .external_lex_state = 3}, + [499] = {.lex_state = 1, .external_lex_state = 3}, + [500] = {.lex_state = 1, .external_lex_state = 3}, + [501] = {.lex_state = 0, .external_lex_state = 2}, + [502] = {.lex_state = 0, .external_lex_state = 2}, + [503] = {.lex_state = 1, .external_lex_state = 2}, + [504] = {.lex_state = 1, .external_lex_state = 3}, + [505] = {.lex_state = 1, .external_lex_state = 3}, + [506] = {.lex_state = 1, .external_lex_state = 19}, + [507] = {.lex_state = 0, .external_lex_state = 2}, + [508] = {.lex_state = 0, .external_lex_state = 2}, + [509] = {.lex_state = 0, .external_lex_state = 2}, + [510] = {.lex_state = 0, .external_lex_state = 2}, + [511] = {.lex_state = 1, .external_lex_state = 3}, + [512] = {.lex_state = 0, .external_lex_state = 2}, + [513] = {.lex_state = 0, .external_lex_state = 2}, + [514] = {.lex_state = 0, .external_lex_state = 2}, + [515] = {.lex_state = 0, .external_lex_state = 2}, + [516] = {.lex_state = 0, .external_lex_state = 2}, + [517] = {.lex_state = 0, .external_lex_state = 2}, + [518] = {.lex_state = 0, .external_lex_state = 2}, + [519] = {.lex_state = 0, .external_lex_state = 2}, + [520] = {.lex_state = 0, .external_lex_state = 2}, + [521] = {.lex_state = 0, .external_lex_state = 2}, + [522] = {.lex_state = 0, .external_lex_state = 2}, + [523] = {.lex_state = 0, .external_lex_state = 2}, + [524] = {.lex_state = 1, .external_lex_state = 19}, + [525] = {.lex_state = 0, .external_lex_state = 2}, + [526] = {.lex_state = 0, .external_lex_state = 2}, + [527] = {.lex_state = 0, .external_lex_state = 2}, + [528] = {.lex_state = 0, .external_lex_state = 2}, + [529] = {.lex_state = 0, .external_lex_state = 2}, + [530] = {.lex_state = 0, .external_lex_state = 2}, + [531] = {.lex_state = 0, .external_lex_state = 2}, + [532] = {.lex_state = 0, .external_lex_state = 2}, + [533] = {.lex_state = 0, .external_lex_state = 2}, + [534] = {.lex_state = 0, .external_lex_state = 2}, + [535] = {.lex_state = 0, .external_lex_state = 2}, + [536] = {.lex_state = 31, .external_lex_state = 3}, + [537] = {.lex_state = 0, .external_lex_state = 2}, + [538] = {.lex_state = 0, .external_lex_state = 2}, + [539] = {.lex_state = 0, .external_lex_state = 2}, + [540] = {.lex_state = 31, .external_lex_state = 3}, + [541] = {.lex_state = 1, .external_lex_state = 3}, + [542] = {.lex_state = 1, .external_lex_state = 3}, + [543] = {.lex_state = 31, .external_lex_state = 3}, + [544] = {.lex_state = 1, .external_lex_state = 19}, + [545] = {.lex_state = 0, .external_lex_state = 2}, + [546] = {.lex_state = 0, .external_lex_state = 2}, + [547] = {.lex_state = 1, .external_lex_state = 19}, + [548] = {.lex_state = 1, .external_lex_state = 3}, + [549] = {.lex_state = 1, .external_lex_state = 3}, + [550] = {.lex_state = 0, .external_lex_state = 2}, + [551] = {.lex_state = 0, .external_lex_state = 2}, + [552] = {.lex_state = 1, .external_lex_state = 3}, + [553] = {.lex_state = 0, .external_lex_state = 2}, + [554] = {.lex_state = 0, .external_lex_state = 2}, + [555] = {.lex_state = 1, .external_lex_state = 3}, + [556] = {.lex_state = 1, .external_lex_state = 3}, + [557] = {.lex_state = 31, .external_lex_state = 3}, + [558] = {.lex_state = 0, .external_lex_state = 2}, + [559] = {.lex_state = 1, .external_lex_state = 3}, + [560] = {.lex_state = 0, .external_lex_state = 2}, + [561] = {.lex_state = 1, .external_lex_state = 19}, + [562] = {.lex_state = 31, .external_lex_state = 3}, + [563] = {.lex_state = 0, .external_lex_state = 2}, + [564] = {.lex_state = 1, .external_lex_state = 3}, + [565] = {.lex_state = 31, .external_lex_state = 2}, + [566] = {.lex_state = 0, .external_lex_state = 2}, + [567] = {.lex_state = 0, .external_lex_state = 2}, + [568] = {.lex_state = 0, .external_lex_state = 2}, + [569] = {.lex_state = 1, .external_lex_state = 3}, + [570] = {.lex_state = 1, .external_lex_state = 3}, + [571] = {.lex_state = 1, .external_lex_state = 19}, + [572] = {.lex_state = 1, .external_lex_state = 3}, + [573] = {.lex_state = 0, .external_lex_state = 2}, + [574] = {.lex_state = 1, .external_lex_state = 3}, + [575] = {.lex_state = 0, .external_lex_state = 2}, + [576] = {.lex_state = 0, .external_lex_state = 2}, + [577] = {.lex_state = 1, .external_lex_state = 3}, + [578] = {.lex_state = 0, .external_lex_state = 2}, + [579] = {.lex_state = 0, .external_lex_state = 2}, + [580] = {.lex_state = 1, .external_lex_state = 14}, + [581] = {.lex_state = 1, .external_lex_state = 3}, + [582] = {.lex_state = 0, .external_lex_state = 2}, + [583] = {.lex_state = 0, .external_lex_state = 2}, + [584] = {.lex_state = 0, .external_lex_state = 2}, + [585] = {.lex_state = 0, .external_lex_state = 2}, + [586] = {.lex_state = 1, .external_lex_state = 14}, + [587] = {.lex_state = 31, .external_lex_state = 19}, + [588] = {.lex_state = 0, .external_lex_state = 2}, + [589] = {.lex_state = 1, .external_lex_state = 3}, + [590] = {.lex_state = 0, .external_lex_state = 2}, + [591] = {.lex_state = 1, .external_lex_state = 3}, + [592] = {.lex_state = 1, .external_lex_state = 3}, + [593] = {.lex_state = 31, .external_lex_state = 3}, + [594] = {.lex_state = 1, .external_lex_state = 14}, + [595] = {.lex_state = 1, .external_lex_state = 3}, + [596] = {.lex_state = 1, .external_lex_state = 3}, + [597] = {.lex_state = 0, .external_lex_state = 2}, + [598] = {.lex_state = 1, .external_lex_state = 3}, + [599] = {.lex_state = 0, .external_lex_state = 2}, + [600] = {.lex_state = 31, .external_lex_state = 3}, + [601] = {.lex_state = 1, .external_lex_state = 3}, + [602] = {.lex_state = 1, .external_lex_state = 3}, + [603] = {.lex_state = 0, .external_lex_state = 2}, + [604] = {.lex_state = 0, .external_lex_state = 2}, + [605] = {.lex_state = 0, .external_lex_state = 2}, + [606] = {.lex_state = 31, .external_lex_state = 2}, + [607] = {.lex_state = 31, .external_lex_state = 2}, + [608] = {.lex_state = 31, .external_lex_state = 2}, + [609] = {.lex_state = 31, .external_lex_state = 2}, + [610] = {.lex_state = 31, .external_lex_state = 2}, + [611] = {.lex_state = 31, .external_lex_state = 2}, + [612] = {.lex_state = 1, .external_lex_state = 3}, + [613] = {.lex_state = 0, .external_lex_state = 2}, + [614] = {.lex_state = 0, .external_lex_state = 2}, + [615] = {.lex_state = 0, .external_lex_state = 2}, + [616] = {.lex_state = 31, .external_lex_state = 2}, + [617] = {.lex_state = 0, .external_lex_state = 2}, + [618] = {.lex_state = 31, .external_lex_state = 3}, + [619] = {.lex_state = 0, .external_lex_state = 2}, + [620] = {.lex_state = 0, .external_lex_state = 2}, + [621] = {.lex_state = 0, .external_lex_state = 2}, + [622] = {.lex_state = 0, .external_lex_state = 10}, + [623] = {.lex_state = 0, .external_lex_state = 2}, + [624] = {.lex_state = 0, .external_lex_state = 2}, + [625] = {.lex_state = 31, .external_lex_state = 2}, + [626] = {.lex_state = 31, .external_lex_state = 2}, + [627] = {.lex_state = 0, .external_lex_state = 2}, + [628] = {.lex_state = 0, .external_lex_state = 3}, + [629] = {.lex_state = 0, .external_lex_state = 2}, + [630] = {.lex_state = 0, .external_lex_state = 2}, + [631] = {.lex_state = 0, .external_lex_state = 2}, + [632] = {.lex_state = 0, .external_lex_state = 3}, + [633] = {.lex_state = 0, .external_lex_state = 2}, + [634] = {.lex_state = 1, .external_lex_state = 2}, + [635] = {.lex_state = 0, .external_lex_state = 3}, + [636] = {.lex_state = 0, .external_lex_state = 2}, + [637] = {.lex_state = 0, .external_lex_state = 2}, + [638] = {.lex_state = 0, .external_lex_state = 2}, + [639] = {.lex_state = 0, .external_lex_state = 2}, + [640] = {.lex_state = 0, .external_lex_state = 2}, + [641] = {.lex_state = 0, .external_lex_state = 2}, + [642] = {.lex_state = 3, .external_lex_state = 2}, + [643] = {.lex_state = 31, .external_lex_state = 3}, + [644] = {.lex_state = 31, .external_lex_state = 3}, + [645] = {.lex_state = 31, .external_lex_state = 3}, + [646] = {.lex_state = 0, .external_lex_state = 3}, + [647] = {.lex_state = 0, .external_lex_state = 3}, + [648] = {.lex_state = 0, .external_lex_state = 2}, + [649] = {.lex_state = 0, .external_lex_state = 2}, + [650] = {.lex_state = 0, .external_lex_state = 2}, + [651] = {.lex_state = 0, .external_lex_state = 2}, + [652] = {.lex_state = 0, .external_lex_state = 2}, + [653] = {.lex_state = 0, .external_lex_state = 2}, + [654] = {.lex_state = 0, .external_lex_state = 2}, + [655] = {.lex_state = 0, .external_lex_state = 2}, + [656] = {.lex_state = 0, .external_lex_state = 2}, + [657] = {.lex_state = 0, .external_lex_state = 2}, + [658] = {.lex_state = 31, .external_lex_state = 2}, + [659] = {.lex_state = 0, .external_lex_state = 3}, + [660] = {.lex_state = 1, .external_lex_state = 2}, + [661] = {.lex_state = 1, .external_lex_state = 2}, + [662] = {.lex_state = 0, .external_lex_state = 2}, + [663] = {.lex_state = 0, .external_lex_state = 2}, + [664] = {.lex_state = 0, .external_lex_state = 2}, + [665] = {.lex_state = 0, .external_lex_state = 2}, + [666] = {.lex_state = 0, .external_lex_state = 2}, + [667] = {.lex_state = 0, .external_lex_state = 2}, + [668] = {.lex_state = 0, .external_lex_state = 2}, + [669] = {.lex_state = 0, .external_lex_state = 2}, + [670] = {.lex_state = 0, .external_lex_state = 2}, + [671] = {.lex_state = 0, .external_lex_state = 3}, + [672] = {.lex_state = 3, .external_lex_state = 2}, + [673] = {.lex_state = 0, .external_lex_state = 2}, + [674] = {.lex_state = 0, .external_lex_state = 2}, + [675] = {.lex_state = 0, .external_lex_state = 2}, + [676] = {.lex_state = 1, .external_lex_state = 2}, + [677] = {.lex_state = 1, .external_lex_state = 2}, + [678] = {.lex_state = 0, .external_lex_state = 2}, + [679] = {.lex_state = 0, .external_lex_state = 2}, + [680] = {.lex_state = 0, .external_lex_state = 2}, + [681] = {.lex_state = 0, .external_lex_state = 3}, + [682] = {.lex_state = 0, .external_lex_state = 2}, + [683] = {.lex_state = 0, .external_lex_state = 2}, + [684] = {.lex_state = 0, .external_lex_state = 2}, + [685] = {.lex_state = 0, .external_lex_state = 2}, + [686] = {.lex_state = 0, .external_lex_state = 2}, + [687] = {.lex_state = 0, .external_lex_state = 2}, + [688] = {.lex_state = 31, .external_lex_state = 2}, + [689] = {.lex_state = 0, .external_lex_state = 2}, + [690] = {.lex_state = 0, .external_lex_state = 2}, + [691] = {.lex_state = 0, .external_lex_state = 2}, + [692] = {.lex_state = 0, .external_lex_state = 3}, + [693] = {.lex_state = 31, .external_lex_state = 2}, + [694] = {.lex_state = 0, .external_lex_state = 2}, + [695] = {.lex_state = 0, .external_lex_state = 2}, + [696] = {.lex_state = 0, .external_lex_state = 2}, + [697] = {.lex_state = 0, .external_lex_state = 2}, + [698] = {.lex_state = 0, .external_lex_state = 2}, + [699] = {.lex_state = 0, .external_lex_state = 2}, + [700] = {.lex_state = 31, .external_lex_state = 2}, + [701] = {.lex_state = 0, .external_lex_state = 2}, + [702] = {.lex_state = 0, .external_lex_state = 2}, + [703] = {.lex_state = 31, .external_lex_state = 2}, + [704] = {.lex_state = 0, .external_lex_state = 2}, + [705] = {.lex_state = 0, .external_lex_state = 2}, + [706] = {.lex_state = 0, .external_lex_state = 2}, + [707] = {.lex_state = 31, .external_lex_state = 2}, + [708] = {.lex_state = 0, .external_lex_state = 2}, + [709] = {.lex_state = 0, .external_lex_state = 2}, + [710] = {.lex_state = 0, .external_lex_state = 2}, + [711] = {.lex_state = 0, .external_lex_state = 2}, + [712] = {.lex_state = 0, .external_lex_state = 2}, + [713] = {.lex_state = 0, .external_lex_state = 2}, + [714] = {.lex_state = 0, .external_lex_state = 2}, + [715] = {.lex_state = 0, .external_lex_state = 2}, + [716] = {.lex_state = 0, .external_lex_state = 2}, + [717] = {.lex_state = 0, .external_lex_state = 2}, + [718] = {.lex_state = 0, .external_lex_state = 2}, + [719] = {.lex_state = 0, .external_lex_state = 2}, + [720] = {.lex_state = 0, .external_lex_state = 2}, + [721] = {.lex_state = 0, .external_lex_state = 2}, + [722] = {.lex_state = 0, .external_lex_state = 2}, + [723] = {.lex_state = 0, .external_lex_state = 2}, + [724] = {.lex_state = 0, .external_lex_state = 2}, + [725] = {.lex_state = 0, .external_lex_state = 2}, + [726] = {.lex_state = 0, .external_lex_state = 2}, + [727] = {.lex_state = 0, .external_lex_state = 2}, + [728] = {.lex_state = 0, .external_lex_state = 2}, + [729] = {.lex_state = 0, .external_lex_state = 2}, + [730] = {.lex_state = 0, .external_lex_state = 2}, + [731] = {.lex_state = 0, .external_lex_state = 2}, + [732] = {.lex_state = 0, .external_lex_state = 3}, + [733] = {.lex_state = 0, .external_lex_state = 2}, + [734] = {.lex_state = 0, .external_lex_state = 2}, + [735] = {.lex_state = 31, .external_lex_state = 2}, + [736] = {.lex_state = 0, .external_lex_state = 2}, + [737] = {.lex_state = 0, .external_lex_state = 2}, + [738] = {.lex_state = 0, .external_lex_state = 2}, + [739] = {.lex_state = 0, .external_lex_state = 2}, + [740] = {.lex_state = 31, .external_lex_state = 2}, + [741] = {.lex_state = 0, .external_lex_state = 2}, + [742] = {.lex_state = 0, .external_lex_state = 2}, + [743] = {.lex_state = 0, .external_lex_state = 2}, + [744] = {.lex_state = 0, .external_lex_state = 3}, + [745] = {.lex_state = 0, .external_lex_state = 2}, + [746] = {.lex_state = 0, .external_lex_state = 2}, + [747] = {.lex_state = 0, .external_lex_state = 2}, + [748] = {.lex_state = 31, .external_lex_state = 2}, + [749] = {.lex_state = 0, .external_lex_state = 2}, + [750] = {.lex_state = 0, .external_lex_state = 20}, + [751] = {.lex_state = 0, .external_lex_state = 2}, + [752] = {.lex_state = 31, .external_lex_state = 2}, + [753] = {.lex_state = 0, .external_lex_state = 2}, + [754] = {.lex_state = 0, .external_lex_state = 20}, + [755] = {.lex_state = 0, .external_lex_state = 2}, + [756] = {.lex_state = 0, .external_lex_state = 2}, + [757] = {.lex_state = 0, .external_lex_state = 2}, + [758] = {.lex_state = 0, .external_lex_state = 3}, + [759] = {.lex_state = 0, .external_lex_state = 2}, + [760] = {.lex_state = 0, .external_lex_state = 2}, + [761] = {.lex_state = 0, .external_lex_state = 2}, + [762] = {.lex_state = 0, .external_lex_state = 2}, + [763] = {.lex_state = 0, .external_lex_state = 20}, + [764] = {.lex_state = 0, .external_lex_state = 20}, + [765] = {.lex_state = 0, .external_lex_state = 2}, + [766] = {.lex_state = 0, .external_lex_state = 2}, + [767] = {.lex_state = 0, .external_lex_state = 2}, + [768] = {.lex_state = 0, .external_lex_state = 2}, + [769] = {.lex_state = 0, .external_lex_state = 2}, + [770] = {.lex_state = 0, .external_lex_state = 2}, + [771] = {.lex_state = 0, .external_lex_state = 2}, + [772] = {.lex_state = 0, .external_lex_state = 2}, + [773] = {.lex_state = 0, .external_lex_state = 2}, + [774] = {.lex_state = 0, .external_lex_state = 2}, + [775] = {.lex_state = 0, .external_lex_state = 2}, + [776] = {.lex_state = 0, .external_lex_state = 2}, + [777] = {.lex_state = 0, .external_lex_state = 2}, + [778] = {.lex_state = 0, .external_lex_state = 3}, + [779] = {.lex_state = 0, .external_lex_state = 2}, + [780] = {.lex_state = 0, .external_lex_state = 20}, + [781] = {.lex_state = 0, .external_lex_state = 2}, + [782] = {.lex_state = 0, .external_lex_state = 20}, + [783] = {.lex_state = 0, .external_lex_state = 2}, + [784] = {.lex_state = 0, .external_lex_state = 2}, + [785] = {.lex_state = 0, .external_lex_state = 2}, + [786] = {.lex_state = 0, .external_lex_state = 2}, + [787] = {.lex_state = 0, .external_lex_state = 2}, + [788] = {.lex_state = 0, .external_lex_state = 2}, + [789] = {.lex_state = 0, .external_lex_state = 2}, + [790] = {.lex_state = 0, .external_lex_state = 3}, + [791] = {.lex_state = 0, .external_lex_state = 2}, + [792] = {.lex_state = 0, .external_lex_state = 20}, + [793] = {.lex_state = 0, .external_lex_state = 2}, + [794] = {.lex_state = 0, .external_lex_state = 2}, + [795] = {.lex_state = 0, .external_lex_state = 20}, + [796] = {.lex_state = 0, .external_lex_state = 2}, + [797] = {.lex_state = 0, .external_lex_state = 2}, + [798] = {.lex_state = 0, .external_lex_state = 2}, + [799] = {.lex_state = 0, .external_lex_state = 2}, + [800] = {.lex_state = 0, .external_lex_state = 3}, + [801] = {.lex_state = 0, .external_lex_state = 2}, + [802] = {.lex_state = 0, .external_lex_state = 20}, + [803] = {.lex_state = 31, .external_lex_state = 2}, + [804] = {.lex_state = 0, .external_lex_state = 2}, + [805] = {.lex_state = 0, .external_lex_state = 2}, + [806] = {.lex_state = 0, .external_lex_state = 2}, + [807] = {.lex_state = 0, .external_lex_state = 2}, + [808] = {.lex_state = 0, .external_lex_state = 2}, + [809] = {.lex_state = 0, .external_lex_state = 2}, + [810] = {.lex_state = 0, .external_lex_state = 3}, + [811] = {.lex_state = 0, .external_lex_state = 2}, + [812] = {.lex_state = 0, .external_lex_state = 20}, + [813] = {.lex_state = 0, .external_lex_state = 2}, + [814] = {.lex_state = 0, .external_lex_state = 2}, + [815] = {.lex_state = 0, .external_lex_state = 2}, + [816] = {.lex_state = 0, .external_lex_state = 2}, + [817] = {.lex_state = 0, .external_lex_state = 2}, + [818] = {.lex_state = 0, .external_lex_state = 2}, + [819] = {.lex_state = 0, .external_lex_state = 2}, + [820] = {.lex_state = 0, .external_lex_state = 3}, + [821] = {.lex_state = 0, .external_lex_state = 2}, + [822] = {.lex_state = 0, .external_lex_state = 2}, + [823] = {.lex_state = 0, .external_lex_state = 2}, + [824] = {.lex_state = 0, .external_lex_state = 2}, + [825] = {.lex_state = 0, .external_lex_state = 2}, + [826] = {.lex_state = 0, .external_lex_state = 2}, + [827] = {.lex_state = 0, .external_lex_state = 3}, + [828] = {.lex_state = 0, .external_lex_state = 2}, + [829] = {.lex_state = 0, .external_lex_state = 20}, + [830] = {.lex_state = 0, .external_lex_state = 2}, + [831] = {.lex_state = 0, .external_lex_state = 2}, + [832] = {.lex_state = 0, .external_lex_state = 2}, + [833] = {.lex_state = 0, .external_lex_state = 2}, + [834] = {.lex_state = 0, .external_lex_state = 3}, + [835] = {.lex_state = 0, .external_lex_state = 2}, + [836] = {.lex_state = 0, .external_lex_state = 20}, + [837] = {.lex_state = 0, .external_lex_state = 2}, + [838] = {.lex_state = 0, .external_lex_state = 2}, + [839] = {.lex_state = 0, .external_lex_state = 2}, + [840] = {.lex_state = 0, .external_lex_state = 2}, + [841] = {.lex_state = 0, .external_lex_state = 3}, + [842] = {.lex_state = 0, .external_lex_state = 2}, + [843] = {.lex_state = 0, .external_lex_state = 20}, + [844] = {.lex_state = 0, .external_lex_state = 2}, + [845] = {.lex_state = 0, .external_lex_state = 2}, + [846] = {.lex_state = 0, .external_lex_state = 2}, + [847] = {.lex_state = 0, .external_lex_state = 2}, + [848] = {.lex_state = 0, .external_lex_state = 3}, + [849] = {.lex_state = 0, .external_lex_state = 2}, + [850] = {.lex_state = 0, .external_lex_state = 2}, + [851] = {.lex_state = 0, .external_lex_state = 2}, + [852] = {.lex_state = 0, .external_lex_state = 2}, + [853] = {.lex_state = 31, .external_lex_state = 2}, + [854] = {.lex_state = 31, .external_lex_state = 2}, + [855] = {.lex_state = 31, .external_lex_state = 2}, + [856] = {.lex_state = 0, .external_lex_state = 2}, + [857] = {.lex_state = 0, .external_lex_state = 2}, + [858] = {.lex_state = 0, .external_lex_state = 2}, + [859] = {.lex_state = 0, .external_lex_state = 2}, + [860] = {.lex_state = 31, .external_lex_state = 2}, + [861] = {.lex_state = 31, .external_lex_state = 2}, + [862] = {.lex_state = 31, .external_lex_state = 2}, + [863] = {.lex_state = 0, .external_lex_state = 2}, + [864] = {.lex_state = 0, .external_lex_state = 2}, + [865] = {.lex_state = 0, .external_lex_state = 20}, + [866] = {.lex_state = 0, .external_lex_state = 2}, + [867] = {.lex_state = 31, .external_lex_state = 2}, + [868] = {.lex_state = 0, .external_lex_state = 2}, + [869] = {.lex_state = 31, .external_lex_state = 2}, + [870] = {.lex_state = 0, .external_lex_state = 2}, + [871] = {.lex_state = 0, .external_lex_state = 20}, + [872] = {.lex_state = 0, .external_lex_state = 2}, + [873] = {.lex_state = 0, .external_lex_state = 2}, + [874] = {.lex_state = 0, .external_lex_state = 2}, + [875] = {.lex_state = 0, .external_lex_state = 2}, + [876] = {.lex_state = 0, .external_lex_state = 2}, + [877] = {.lex_state = 0, .external_lex_state = 2}, + [878] = {.lex_state = 0, .external_lex_state = 2}, + [879] = {.lex_state = 0, .external_lex_state = 2}, + [880] = {.lex_state = 0, .external_lex_state = 2}, + [881] = {.lex_state = 0, .external_lex_state = 2}, + [882] = {.lex_state = 0, .external_lex_state = 2}, + [883] = {.lex_state = 0, .external_lex_state = 2}, + [884] = {.lex_state = 0, .external_lex_state = 2}, + [885] = {.lex_state = 0, .external_lex_state = 2}, + [886] = {.lex_state = 0, .external_lex_state = 2}, + [887] = {.lex_state = 0, .external_lex_state = 2}, + [888] = {.lex_state = 0, .external_lex_state = 2}, + [889] = {.lex_state = 0, .external_lex_state = 2}, + [890] = {.lex_state = 0, .external_lex_state = 2}, + [891] = {.lex_state = 0, .external_lex_state = 2}, + [892] = {.lex_state = 0, .external_lex_state = 20}, + [893] = {.lex_state = 0, .external_lex_state = 2}, + [894] = {.lex_state = 0, .external_lex_state = 20}, + [895] = {.lex_state = 0, .external_lex_state = 2}, +}; + +static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { + [0] = { + [ts_builtin_sym_end] = ACTIONS(1), + [sym_ident_pattern_token] = ACTIONS(1), + [anon_sym_SEMI] = ACTIONS(1), + [anon_sym_true] = ACTIONS(1), + [anon_sym_false] = ACTIONS(1), + [aux_sym_decimal_int_literal_token1] = ACTIONS(1), + [aux_sym_decimal_int_literal_token2] = ACTIONS(1), + [sym_hex_int_literal] = ACTIONS(1), + [aux_sym_decimal_float_literal_token1] = ACTIONS(1), + [aux_sym_decimal_float_literal_token2] = ACTIONS(1), + [aux_sym_decimal_float_literal_token3] = ACTIONS(1), + [aux_sym_decimal_float_literal_token4] = ACTIONS(1), + [aux_sym_decimal_float_literal_token5] = ACTIONS(1), + [aux_sym_hex_float_literal_token1] = ACTIONS(1), + [aux_sym_hex_float_literal_token2] = ACTIONS(1), + [aux_sym_hex_float_literal_token3] = ACTIONS(1), + [anon_sym_diagnostic] = ACTIONS(1), + [anon_sym_DOT] = ACTIONS(1), + [anon_sym_COMMA] = ACTIONS(1), + [anon_sym_AT] = ACTIONS(1), + [anon_sym_align] = ACTIONS(1), + [anon_sym_LPAREN] = ACTIONS(1), + [anon_sym_RPAREN] = ACTIONS(1), + [anon_sym_binding] = ACTIONS(1), + [anon_sym_blend_src] = ACTIONS(1), + [anon_sym_builtin] = ACTIONS(1), + [anon_sym_const] = ACTIONS(1), + [anon_sym_group] = ACTIONS(1), + [anon_sym_id] = ACTIONS(1), + [anon_sym_interpolate] = ACTIONS(1), + [anon_sym_invariant] = ACTIONS(1), + [anon_sym_location] = ACTIONS(1), + [anon_sym_must_use] = ACTIONS(1), + [anon_sym_size] = ACTIONS(1), + [anon_sym_workgroup_size] = ACTIONS(1), + [anon_sym_vertex] = ACTIONS(1), + [anon_sym_fragment] = ACTIONS(1), + [anon_sym_compute] = ACTIONS(1), + [anon_sym_struct] = ACTIONS(1), + [anon_sym_LBRACE] = ACTIONS(1), + [anon_sym_RBRACE] = ACTIONS(1), + [anon_sym_COLON] = ACTIONS(1), + [anon_sym_alias] = ACTIONS(1), + [anon_sym_EQ] = ACTIONS(1), + [anon_sym_let] = ACTIONS(1), + [anon_sym_var] = ACTIONS(1), + [anon_sym_override] = ACTIONS(1), + [anon_sym_LBRACK] = ACTIONS(1), + [anon_sym_RBRACK] = ACTIONS(1), + [anon_sym_DASH] = ACTIONS(1), + [anon_sym_BANG] = ACTIONS(1), + [anon_sym_TILDE] = ACTIONS(1), + [anon_sym_STAR] = ACTIONS(1), + [anon_sym_AMP] = ACTIONS(1), + [anon_sym_SLASH] = ACTIONS(1), + [anon_sym_PERCENT] = ACTIONS(1), + [anon_sym_PLUS] = ACTIONS(1), + [anon_sym_EQ_EQ] = ACTIONS(1), + [anon_sym_BANG_EQ] = ACTIONS(1), + [anon_sym_AMP_AMP] = ACTIONS(1), + [anon_sym_PIPE_PIPE] = ACTIONS(1), + [anon_sym_PIPE] = ACTIONS(1), + [anon_sym_CARET] = ACTIONS(1), + [anon_sym__] = ACTIONS(1), + [anon_sym_PLUS_EQ] = ACTIONS(1), + [anon_sym_DASH_EQ] = ACTIONS(1), + [anon_sym_STAR_EQ] = ACTIONS(1), + [anon_sym_SLASH_EQ] = ACTIONS(1), + [anon_sym_PERCENT_EQ] = ACTIONS(1), + [anon_sym_AMP_EQ] = ACTIONS(1), + [anon_sym_PIPE_EQ] = ACTIONS(1), + [anon_sym_CARET_EQ] = ACTIONS(1), + [anon_sym_PLUS_PLUS] = ACTIONS(1), + [anon_sym_if] = ACTIONS(1), + [anon_sym_else] = ACTIONS(1), + [anon_sym_switch] = ACTIONS(1), + [anon_sym_case] = ACTIONS(1), + [anon_sym_default] = ACTIONS(1), + [anon_sym_loop] = ACTIONS(1), + [anon_sym_for] = ACTIONS(1), + [anon_sym_while] = ACTIONS(1), + [anon_sym_break] = ACTIONS(1), + [sym_continue_statement] = ACTIONS(1), + [anon_sym_continuing] = ACTIONS(1), + [anon_sym_return] = ACTIONS(1), + [anon_sym_const_assert] = ACTIONS(1), + [anon_sym_discard] = ACTIONS(1), + [anon_sym_fn] = ACTIONS(1), + [anon_sym_DASH_GT] = ACTIONS(1), + [anon_sym_enable] = ACTIONS(1), + [anon_sym_requires] = ACTIONS(1), + [aux_sym_swizzle_name_token1] = ACTIONS(1), + [aux_sym_swizzle_name_token2] = ACTIONS(1), + [aux_sym_swizzle_name_token3] = ACTIONS(1), + [aux_sym_swizzle_name_token4] = ACTIONS(1), + [aux_sym_swizzle_name_token5] = ACTIONS(1), + [aux_sym_swizzle_name_token6] = ACTIONS(1), + [aux_sym_swizzle_name_token7] = ACTIONS(1), + [aux_sym_swizzle_name_token8] = ACTIONS(1), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + [sym__disambiguate_template] = ACTIONS(1), + [sym__template_args_start] = ACTIONS(1), + [sym__template_args_end] = ACTIONS(1), + [sym__less_than] = ACTIONS(1), + [sym__less_than_equal] = ACTIONS(1), + [sym__shift_left] = ACTIONS(1), + [sym__shift_left_assign] = ACTIONS(1), + [sym__greater_than] = ACTIONS(1), + [sym__greater_than_equal] = ACTIONS(1), + [sym__shift_right] = ACTIONS(1), + [sym__shift_right_assign] = ACTIONS(1), + [sym__error_sentinel] = ACTIONS(1), + }, + [1] = { + [sym_translation_unit] = STATE(887), + [sym_global_directive] = STATE(55), + [sym_diagnostic_directive] = STATE(463), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(177), + [sym_struct_decl] = STATE(105), + [sym_type_alias_decl] = STATE(886), + [sym_variable_decl] = STATE(740), + [sym_global_variable_decl] = STATE(886), + [sym_global_value_decl] = STATE(886), + [sym_const_assert_statement] = STATE(886), + [sym_function_decl] = STATE(105), + [sym_function_header] = STATE(254), + [sym_enable_directive] = STATE(463), + [sym_requires_directive] = STATE(463), + [aux_sym_translation_unit_repeat1] = STATE(55), + [aux_sym_translation_unit_repeat2] = STATE(105), + [aux_sym_struct_member_repeat1] = STATE(177), + [ts_builtin_sym_end] = ACTIONS(5), + [anon_sym_SEMI] = ACTIONS(7), + [anon_sym_diagnostic] = ACTIONS(9), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_const] = ACTIONS(13), + [anon_sym_struct] = ACTIONS(15), + [anon_sym_alias] = ACTIONS(17), + [anon_sym_var] = ACTIONS(19), + [anon_sym_override] = ACTIONS(21), + [anon_sym_const_assert] = ACTIONS(23), + [anon_sym_fn] = ACTIONS(25), + [anon_sym_enable] = ACTIONS(27), + [anon_sym_requires] = ACTIONS(29), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [2] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(882), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(41), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [3] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(786), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(4), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(4), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(69), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [4] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(815), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(71), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [5] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(815), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(6), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(6), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(71), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [6] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(844), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(73), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [7] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_continuing_statement] = STATE(844), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(2), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(2), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(73), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_continuing] = ACTIONS(63), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [8] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(75), + [anon_sym_SEMI] = ACTIONS(78), + [anon_sym_AT] = ACTIONS(81), + [anon_sym_LPAREN] = ACTIONS(84), + [anon_sym_const] = ACTIONS(87), + [anon_sym_LBRACE] = ACTIONS(90), + [anon_sym_RBRACE] = ACTIONS(93), + [anon_sym_let] = ACTIONS(87), + [anon_sym_var] = ACTIONS(95), + [anon_sym_STAR] = ACTIONS(98), + [anon_sym_AMP] = ACTIONS(98), + [anon_sym__] = ACTIONS(101), + [anon_sym_if] = ACTIONS(104), + [anon_sym_switch] = ACTIONS(107), + [anon_sym_loop] = ACTIONS(110), + [anon_sym_for] = ACTIONS(113), + [anon_sym_while] = ACTIONS(116), + [anon_sym_break] = ACTIONS(119), + [sym_continue_statement] = ACTIONS(122), + [anon_sym_continuing] = ACTIONS(125), + [anon_sym_return] = ACTIONS(127), + [anon_sym_const_assert] = ACTIONS(130), + [anon_sym_discard] = ACTIONS(122), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [9] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_break_if_statement] = STATE(839), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(12), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(12), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(133), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(135), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [10] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_break_if_statement] = STATE(889), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(137), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(135), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [11] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_break_if_statement] = STATE(868), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(10), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(10), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(139), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(135), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [12] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_break_if_statement] = STATE(868), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(139), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(135), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [13] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(14), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(14), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(141), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [14] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(143), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [15] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(16), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(16), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(143), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, + [16] = { + [sym_ident] = STATE(795), + [sym_align_attr] = STATE(554), + [sym_binding_attr] = STATE(554), + [sym_blend_src_attr] = STATE(554), + [sym_builtin_attr] = STATE(554), + [sym_const_attr] = STATE(554), + [sym_diagnostic_attr] = STATE(554), + [sym_group_attr] = STATE(554), + [sym_id_attr] = STATE(554), + [sym_interpolate_attr] = STATE(554), + [sym_invariant_attr] = STATE(554), + [sym_location_attr] = STATE(554), + [sym_must_use_attr] = STATE(554), + [sym_size_attr] = STATE(554), + [sym_workgroup_size_attr] = STATE(554), + [sym_vertex_attr] = STATE(554), + [sym_fragment_attr] = STATE(554), + [sym_compute_attr] = STATE(554), + [sym_attribute] = STATE(168), + [sym_template_elaborated_ident] = STATE(702), + [sym_variable_or_value_statement] = STATE(796), + [sym_variable_decl] = STATE(703), + [sym_call_phrase] = STATE(705), + [sym_lhs_expression] = STATE(437), + [sym_core_lhs_expression] = STATE(406), + [sym_compound_statement] = STATE(216), + [sym_assignment_statement] = STATE(706), + [sym_increment_statement] = STATE(706), + [sym_decrement_statement] = STATE(706), + [sym_if_statement] = STATE(216), + [sym_if_clause] = STATE(167), + [sym_switch_statement] = STATE(216), + [sym_loop_statement] = STATE(216), + [sym_for_statement] = STATE(216), + [sym_while_statement] = STATE(216), + [sym_break_statement] = STATE(796), + [sym_return_statement] = STATE(796), + [sym_func_call_statement] = STATE(796), + [sym_const_assert_statement] = STATE(796), + [sym_statement] = STATE(8), + [sym_variable_updating_statement] = STATE(796), + [aux_sym_struct_member_repeat1] = STATE(168), + [aux_sym_compound_statement_repeat1] = STATE(8), + [sym_ident_pattern_token] = ACTIONS(31), + [anon_sym_SEMI] = ACTIONS(33), + [anon_sym_AT] = ACTIONS(11), + [anon_sym_LPAREN] = ACTIONS(35), + [anon_sym_const] = ACTIONS(37), + [anon_sym_LBRACE] = ACTIONS(39), + [anon_sym_RBRACE] = ACTIONS(145), + [anon_sym_let] = ACTIONS(37), + [anon_sym_var] = ACTIONS(43), + [anon_sym_STAR] = ACTIONS(45), + [anon_sym_AMP] = ACTIONS(45), + [anon_sym__] = ACTIONS(47), + [anon_sym_if] = ACTIONS(49), + [anon_sym_switch] = ACTIONS(51), + [anon_sym_loop] = ACTIONS(53), + [anon_sym_for] = ACTIONS(55), + [anon_sym_while] = ACTIONS(57), + [anon_sym_break] = ACTIONS(59), + [sym_continue_statement] = ACTIONS(61), + [anon_sym_return] = ACTIONS(65), + [anon_sym_const_assert] = ACTIONS(67), + [anon_sym_discard] = ACTIONS(61), + [sym__comment] = ACTIONS(3), + [sym__blankspace] = ACTIONS(3), + [sym__block_comment] = ACTIONS(3), + }, +}; + +static const uint16_t ts_small_parse_table[] = { + [0] = 35, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(167), 1, + anon_sym_default, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(627), 1, + sym_case_selector, + STATE(633), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(161), 3, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [125] = 35, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(167), 1, + anon_sym_default, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(627), 1, + sym_case_selector, + STATE(633), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(169), 3, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [250] = 35, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(167), 1, + anon_sym_default, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(208), 1, + sym_case_selectors, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(623), 1, + sym_case_selector, + STATE(633), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [373] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(820), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [493] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(167), 1, + anon_sym_default, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(627), 1, + sym_case_selector, + STATE(633), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [613] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(834), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [733] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(758), 1, + sym_template_arg_comma_list, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [853] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(189), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(762), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [973] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(191), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(826), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1093] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(193), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(819), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1213] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(195), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(833), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1333] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(827), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1453] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(197), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(809), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1573] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(199), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(840), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1693] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + ACTIONS(201), 1, + sym__template_args_end, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(692), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1813] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(203), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(799), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [1933] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(205), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(847), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2053] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(810), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2173] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(841), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2293] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(778), 1, + sym_template_arg_comma_list, + STATE(782), 1, + sym_ident, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2413] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(800), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2533] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(207), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(789), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2653] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + ACTIONS(209), 1, + sym__template_args_end, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(692), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2773] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(211), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(657), 1, + sym_expression, + STATE(777), 1, + sym_expression_comma_list, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [2893] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(790), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3013] = 34, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(659), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(848), 1, + sym_template_arg_comma_list, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3133] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(213), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(727), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3250] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(215), 1, + anon_sym_SEMI, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(817), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3367] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(310), 1, + sym_unary_expression, + STATE(311), 1, + sym_singular_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(628), 1, + sym_relational_expression, + STATE(692), 1, + sym_template_arg_expression, + STATE(732), 1, + sym_expression, + STATE(744), 1, + sym_bitwise_expression, + STATE(765), 1, + sym_short_circuit_and_expression, + STATE(766), 1, + sym_short_circuit_or_expression, + STATE(782), 1, + sym_ident, + STATE(853), 1, + sym_binary_or_expression, + STATE(854), 1, + sym_binary_and_expression, + STATE(855), 1, + sym_binary_xor_expression, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3484] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(217), 1, + anon_sym_SEMI, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(857), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3601] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(219), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(696), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3718] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(221), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(697), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3835] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(223), 1, + anon_sym_RPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(696), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [3952] = 33, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + ACTIONS(225), 1, + anon_sym_SEMI, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(751), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4069] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(849), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4183] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(811), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4297] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(784), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4411] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(761), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4525] = 22, + ACTIONS(9), 1, + anon_sym_diagnostic, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(13), 1, + anon_sym_const, + ACTIONS(15), 1, + anon_sym_struct, + ACTIONS(17), 1, + anon_sym_alias, + ACTIONS(19), 1, + anon_sym_var, + ACTIONS(21), 1, + anon_sym_override, + ACTIONS(23), 1, + anon_sym_const_assert, + ACTIONS(25), 1, + anon_sym_fn, + ACTIONS(27), 1, + anon_sym_enable, + ACTIONS(29), 1, + anon_sym_requires, + ACTIONS(227), 1, + ts_builtin_sym_end, + ACTIONS(229), 1, + anon_sym_SEMI, + STATE(254), 1, + sym_function_header, + STATE(740), 1, + sym_variable_decl, + STATE(177), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + STATE(327), 2, + sym_global_directive, + aux_sym_translation_unit_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(102), 3, + sym_struct_decl, + sym_function_decl, + aux_sym_translation_unit_repeat2, + STATE(463), 3, + sym_diagnostic_directive, + sym_enable_directive, + sym_requires_directive, + STATE(886), 4, + sym_type_alias_decl, + sym_global_variable_decl, + sym_global_value_decl, + sym_const_assert_statement, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [4619] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(838), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4733] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(248), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4847] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(816), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [4961] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(842), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5075] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(845), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5189] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(808), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5303] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(805), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5417] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(859), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5531] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(255), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5645] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(264), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5759] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(793), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5873] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(835), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [5987] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(708), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6101] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(851), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6215] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + STATE(885), 1, + sym_expression, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6329] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(745), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6443] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(746), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6557] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(818), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6671] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(696), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6785] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(737), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [6899] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(779), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7013] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(794), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7127] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(767), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7241] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(801), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7355] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(725), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7469] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(804), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7583] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(791), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7697] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(814), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7811] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(806), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [7925] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(724), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8039] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(241), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8153] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(239), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8267] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(238), 1, + sym_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8381] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(831), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8495] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(720), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8609] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(757), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8723] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(719), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8837] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(821), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [8951] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(716), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9065] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(824), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9179] = 32, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(179), 1, + sym_unary_expression, + STATE(180), 1, + sym_singular_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(599), 1, + sym_relational_expression, + STATE(615), 1, + sym_bitwise_expression, + STATE(828), 1, + sym_expression, + STATE(860), 1, + sym_binary_xor_expression, + STATE(861), 1, + sym_binary_and_expression, + STATE(862), 1, + sym_binary_or_expression, + STATE(863), 1, + sym_short_circuit_or_expression, + STATE(864), 1, + sym_short_circuit_and_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9293] = 25, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(180), 1, + sym_singular_expression, + STATE(240), 1, + sym_unary_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(439), 1, + sym_shift_expression, + STATE(605), 1, + sym_relational_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9386] = 25, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(180), 1, + sym_singular_expression, + STATE(240), 1, + sym_unary_expression, + STATE(287), 1, + sym_multiplicative_expression, + STATE(335), 1, + sym_additive_expression, + STATE(423), 1, + sym_shift_expression, + STATE(604), 1, + sym_relational_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9479] = 25, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(311), 1, + sym_singular_expression, + STATE(369), 1, + sym_unary_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(586), 1, + sym_shift_expression, + STATE(647), 1, + sym_relational_expression, + STATE(782), 1, + sym_ident, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9572] = 25, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(311), 1, + sym_singular_expression, + STATE(369), 1, + sym_unary_expression, + STATE(397), 1, + sym_multiplicative_expression, + STATE(459), 1, + sym_additive_expression, + STATE(594), 1, + sym_shift_expression, + STATE(646), 1, + sym_relational_expression, + STATE(782), 1, + sym_ident, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9665] = 17, + ACTIONS(231), 1, + ts_builtin_sym_end, + ACTIONS(233), 1, + anon_sym_SEMI, + ACTIONS(236), 1, + anon_sym_AT, + ACTIONS(239), 1, + anon_sym_const, + ACTIONS(242), 1, + anon_sym_struct, + ACTIONS(245), 1, + anon_sym_alias, + ACTIONS(248), 1, + anon_sym_var, + ACTIONS(251), 1, + anon_sym_override, + ACTIONS(254), 1, + anon_sym_const_assert, + ACTIONS(257), 1, + anon_sym_fn, + STATE(254), 1, + sym_function_header, + STATE(740), 1, + sym_variable_decl, + STATE(177), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(101), 3, + sym_struct_decl, + sym_function_decl, + aux_sym_translation_unit_repeat2, + STATE(886), 4, + sym_type_alias_decl, + sym_global_variable_decl, + sym_global_value_decl, + sym_const_assert_statement, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [9741] = 17, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(13), 1, + anon_sym_const, + ACTIONS(15), 1, + anon_sym_struct, + ACTIONS(17), 1, + anon_sym_alias, + ACTIONS(19), 1, + anon_sym_var, + ACTIONS(21), 1, + anon_sym_override, + ACTIONS(23), 1, + anon_sym_const_assert, + ACTIONS(25), 1, + anon_sym_fn, + ACTIONS(260), 1, + ts_builtin_sym_end, + ACTIONS(262), 1, + anon_sym_SEMI, + STATE(254), 1, + sym_function_header, + STATE(740), 1, + sym_variable_decl, + STATE(177), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(101), 3, + sym_struct_decl, + sym_function_decl, + aux_sym_translation_unit_repeat2, + STATE(886), 4, + sym_type_alias_decl, + sym_global_variable_decl, + sym_global_value_decl, + sym_const_assert_statement, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [9817] = 24, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(268), 1, + sym_hex_int_literal, + ACTIONS(272), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(276), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(278), 1, + anon_sym_LPAREN, + STATE(297), 1, + sym_template_elaborated_ident, + STATE(315), 1, + sym_primary_expression, + STATE(346), 1, + sym_decimal_int_literal, + STATE(358), 1, + sym_call_phrase, + STATE(403), 1, + sym_singular_expression, + STATE(428), 1, + sym_unary_expression, + STATE(447), 1, + sym_multiplicative_expression, + STATE(565), 1, + sym_additive_expression, + STATE(597), 1, + sym_shift_expression, + STATE(802), 1, + sym_ident, + ACTIONS(264), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(266), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(274), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(350), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(349), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(351), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(270), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(280), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9907] = 24, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(286), 1, + sym_hex_int_literal, + ACTIONS(290), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(294), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(296), 1, + anon_sym_LPAREN, + STATE(425), 1, + sym_template_elaborated_ident, + STATE(457), 1, + sym_primary_expression, + STATE(461), 1, + sym_decimal_int_literal, + STATE(465), 1, + sym_call_phrase, + STATE(547), 1, + sym_unary_expression, + STATE(561), 1, + sym_singular_expression, + STATE(589), 1, + sym_multiplicative_expression, + STATE(612), 1, + sym_additive_expression, + STATE(635), 1, + sym_shift_expression, + STATE(750), 1, + sym_ident, + ACTIONS(282), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(284), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(292), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(460), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(464), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(481), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(288), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(298), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [9997] = 17, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(13), 1, + anon_sym_const, + ACTIONS(15), 1, + anon_sym_struct, + ACTIONS(17), 1, + anon_sym_alias, + ACTIONS(19), 1, + anon_sym_var, + ACTIONS(21), 1, + anon_sym_override, + ACTIONS(23), 1, + anon_sym_const_assert, + ACTIONS(25), 1, + anon_sym_fn, + ACTIONS(227), 1, + ts_builtin_sym_end, + ACTIONS(262), 1, + anon_sym_SEMI, + STATE(254), 1, + sym_function_header, + STATE(740), 1, + sym_variable_decl, + STATE(177), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(101), 3, + sym_struct_decl, + sym_function_decl, + aux_sym_translation_unit_repeat2, + STATE(886), 4, + sym_type_alias_decl, + sym_global_variable_decl, + sym_global_value_decl, + sym_const_assert_statement, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [10073] = 24, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(268), 1, + sym_hex_int_literal, + ACTIONS(272), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(276), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(278), 1, + anon_sym_LPAREN, + STATE(297), 1, + sym_template_elaborated_ident, + STATE(315), 1, + sym_primary_expression, + STATE(346), 1, + sym_decimal_int_literal, + STATE(358), 1, + sym_call_phrase, + STATE(403), 1, + sym_singular_expression, + STATE(413), 1, + sym_unary_expression, + STATE(426), 1, + sym_multiplicative_expression, + STATE(503), 1, + sym_additive_expression, + STATE(597), 1, + sym_shift_expression, + STATE(802), 1, + sym_ident, + ACTIONS(264), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(266), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(274), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(350), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(349), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(351), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(270), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(280), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10163] = 24, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(286), 1, + sym_hex_int_literal, + ACTIONS(290), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(294), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(296), 1, + anon_sym_LPAREN, + STATE(425), 1, + sym_template_elaborated_ident, + STATE(457), 1, + sym_primary_expression, + STATE(461), 1, + sym_decimal_int_literal, + STATE(465), 1, + sym_call_phrase, + STATE(561), 1, + sym_singular_expression, + STATE(587), 1, + sym_unary_expression, + STATE(600), 1, + sym_multiplicative_expression, + STATE(618), 1, + sym_additive_expression, + STATE(635), 1, + sym_shift_expression, + STATE(750), 1, + sym_ident, + ACTIONS(282), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(284), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(292), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(460), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(464), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(481), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(288), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(298), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10253] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(450), 1, + sym_multiplicative_expression, + STATE(454), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10337] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(322), 1, + sym_hex_int_literal, + ACTIONS(326), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(330), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(332), 1, + anon_sym_LPAREN, + STATE(466), 1, + sym_template_elaborated_ident, + STATE(504), 1, + sym_primary_expression, + STATE(548), 1, + sym_decimal_int_literal, + STATE(559), 1, + sym_call_phrase, + STATE(581), 1, + sym_multiplicative_expression, + STATE(591), 1, + sym_unary_expression, + STATE(602), 1, + sym_singular_expression, + STATE(843), 1, + sym_ident, + ACTIONS(318), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(320), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(328), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(555), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(552), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(556), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(324), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(334), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10421] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(340), 1, + sym_hex_int_literal, + ACTIONS(344), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(348), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(350), 1, + anon_sym_LPAREN, + STATE(333), 1, + sym_template_elaborated_ident, + STATE(381), 1, + sym_primary_expression, + STATE(390), 1, + sym_call_phrase, + STATE(399), 1, + sym_decimal_int_literal, + STATE(421), 1, + sym_multiplicative_expression, + STATE(443), 1, + sym_singular_expression, + STATE(454), 1, + sym_unary_expression, + STATE(836), 1, + sym_ident, + ACTIONS(336), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(338), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(346), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(393), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(391), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(394), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(342), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(352), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10505] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(591), 1, + sym_unary_expression, + STATE(593), 1, + sym_multiplicative_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10589] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(376), 1, + sym_hex_int_literal, + ACTIONS(380), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(384), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(386), 1, + anon_sym_LPAREN, + STATE(321), 1, + sym_template_elaborated_ident, + STATE(334), 1, + sym_primary_expression, + STATE(371), 1, + sym_call_phrase, + STATE(384), 1, + sym_decimal_int_literal, + STATE(388), 1, + sym_multiplicative_expression, + STATE(420), 1, + sym_unary_expression, + STATE(434), 1, + sym_singular_expression, + STATE(812), 1, + sym_ident, + ACTIONS(372), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(374), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(382), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(374), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(361), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(372), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(378), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(388), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10673] = 22, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(394), 1, + sym_hex_int_literal, + ACTIONS(398), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(402), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(404), 1, + anon_sym_LPAREN, + STATE(188), 1, + sym_template_elaborated_ident, + STATE(213), 1, + sym_primary_expression, + STATE(270), 1, + sym_call_phrase, + STATE(280), 1, + sym_decimal_int_literal, + STATE(283), 1, + sym_multiplicative_expression, + STATE(301), 1, + sym_unary_expression, + STATE(309), 1, + sym_singular_expression, + STATE(792), 1, + sym_ident, + ACTIONS(390), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(392), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(400), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(274), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(273), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(276), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(396), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(406), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10757] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(340), 1, + sym_hex_int_literal, + ACTIONS(344), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(348), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(350), 1, + anon_sym_LPAREN, + STATE(333), 1, + sym_template_elaborated_ident, + STATE(381), 1, + sym_primary_expression, + STATE(390), 1, + sym_call_phrase, + STATE(399), 1, + sym_decimal_int_literal, + STATE(436), 1, + sym_unary_expression, + STATE(443), 1, + sym_singular_expression, + STATE(836), 1, + sym_ident, + ACTIONS(336), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(338), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(346), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(393), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(391), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(394), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(342), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(352), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10838] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(286), 1, + sym_hex_int_literal, + ACTIONS(290), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(294), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(296), 1, + anon_sym_LPAREN, + STATE(425), 1, + sym_template_elaborated_ident, + STATE(457), 1, + sym_primary_expression, + STATE(461), 1, + sym_decimal_int_literal, + STATE(465), 1, + sym_call_phrase, + STATE(506), 1, + sym_unary_expression, + STATE(561), 1, + sym_singular_expression, + STATE(750), 1, + sym_ident, + ACTIONS(282), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(284), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(292), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(460), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(464), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(481), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(288), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(298), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [10919] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(268), 1, + sym_hex_int_literal, + ACTIONS(272), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(276), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(278), 1, + anon_sym_LPAREN, + STATE(297), 1, + sym_template_elaborated_ident, + STATE(315), 1, + sym_primary_expression, + STATE(346), 1, + sym_decimal_int_literal, + STATE(358), 1, + sym_call_phrase, + STATE(403), 1, + sym_singular_expression, + STATE(408), 1, + sym_unary_expression, + STATE(802), 1, + sym_ident, + ACTIONS(264), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(266), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(274), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(350), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(349), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(351), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(270), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(280), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11000] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(562), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11081] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(322), 1, + sym_hex_int_literal, + ACTIONS(326), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(330), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(332), 1, + anon_sym_LPAREN, + STATE(466), 1, + sym_template_elaborated_ident, + STATE(504), 1, + sym_primary_expression, + STATE(548), 1, + sym_decimal_int_literal, + STATE(559), 1, + sym_call_phrase, + STATE(602), 1, + sym_singular_expression, + STATE(632), 1, + sym_unary_expression, + STATE(843), 1, + sym_ident, + ACTIONS(318), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(320), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(328), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(555), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(552), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(556), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(324), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(334), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11162] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(592), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11243] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(632), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11324] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(415), 1, + sym_unary_expression, + STATE(416), 1, + sym_singular_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11405] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(376), 1, + sym_hex_int_literal, + ACTIONS(380), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(384), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(386), 1, + anon_sym_LPAREN, + STATE(321), 1, + sym_template_elaborated_ident, + STATE(334), 1, + sym_primary_expression, + STATE(371), 1, + sym_call_phrase, + STATE(384), 1, + sym_decimal_int_literal, + STATE(429), 1, + sym_unary_expression, + STATE(434), 1, + sym_singular_expression, + STATE(812), 1, + sym_ident, + ACTIONS(372), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(374), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(382), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(374), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(361), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(372), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(378), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(388), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11486] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(340), 1, + sym_hex_int_literal, + ACTIONS(344), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(348), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(350), 1, + anon_sym_LPAREN, + STATE(333), 1, + sym_template_elaborated_ident, + STATE(381), 1, + sym_primary_expression, + STATE(390), 1, + sym_call_phrase, + STATE(399), 1, + sym_decimal_int_literal, + STATE(443), 1, + sym_singular_expression, + STATE(453), 1, + sym_unary_expression, + STATE(836), 1, + sym_ident, + ACTIONS(336), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(338), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(346), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(393), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(391), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(394), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(342), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(352), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11567] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(322), 1, + sym_hex_int_literal, + ACTIONS(326), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(330), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(332), 1, + anon_sym_LPAREN, + STATE(466), 1, + sym_template_elaborated_ident, + STATE(504), 1, + sym_primary_expression, + STATE(548), 1, + sym_decimal_int_literal, + STATE(559), 1, + sym_call_phrase, + STATE(601), 1, + sym_unary_expression, + STATE(602), 1, + sym_singular_expression, + STATE(843), 1, + sym_ident, + ACTIONS(318), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(320), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(328), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(555), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(552), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(556), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(324), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(334), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11648] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(151), 1, + sym_hex_int_literal, + ACTIONS(155), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(159), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(163), 1, + anon_sym_LPAREN, + STATE(147), 1, + sym_template_elaborated_ident, + STATE(149), 1, + sym_primary_expression, + STATE(154), 1, + sym_call_phrase, + STATE(166), 1, + sym_decimal_int_literal, + STATE(180), 1, + sym_singular_expression, + STATE(183), 1, + sym_unary_expression, + STATE(865), 1, + sym_ident, + ACTIONS(147), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(149), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(157), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(162), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(157), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(163), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(153), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(165), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11729] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(376), 1, + sym_hex_int_literal, + ACTIONS(380), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(384), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(386), 1, + anon_sym_LPAREN, + STATE(321), 1, + sym_template_elaborated_ident, + STATE(334), 1, + sym_primary_expression, + STATE(371), 1, + sym_call_phrase, + STATE(384), 1, + sym_decimal_int_literal, + STATE(434), 1, + sym_singular_expression, + STATE(580), 1, + sym_unary_expression, + STATE(812), 1, + sym_ident, + ACTIONS(372), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(374), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(382), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(374), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(361), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(372), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(378), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(388), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11810] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(394), 1, + sym_hex_int_literal, + ACTIONS(398), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(402), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(404), 1, + anon_sym_LPAREN, + STATE(188), 1, + sym_template_elaborated_ident, + STATE(213), 1, + sym_primary_expression, + STATE(270), 1, + sym_call_phrase, + STATE(280), 1, + sym_decimal_int_literal, + STATE(309), 1, + sym_singular_expression, + STATE(433), 1, + sym_unary_expression, + STATE(792), 1, + sym_ident, + ACTIONS(390), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(392), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(400), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(274), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(273), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(276), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(396), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(406), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11891] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(376), 1, + sym_hex_int_literal, + ACTIONS(380), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(384), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(386), 1, + anon_sym_LPAREN, + STATE(321), 1, + sym_template_elaborated_ident, + STATE(334), 1, + sym_primary_expression, + STATE(371), 1, + sym_call_phrase, + STATE(384), 1, + sym_decimal_int_literal, + STATE(424), 1, + sym_unary_expression, + STATE(434), 1, + sym_singular_expression, + STATE(812), 1, + sym_ident, + ACTIONS(372), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(374), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(382), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(374), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(361), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(372), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(378), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(388), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [11972] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(394), 1, + sym_hex_int_literal, + ACTIONS(398), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(402), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(404), 1, + anon_sym_LPAREN, + STATE(188), 1, + sym_template_elaborated_ident, + STATE(213), 1, + sym_primary_expression, + STATE(270), 1, + sym_call_phrase, + STATE(280), 1, + sym_decimal_int_literal, + STATE(303), 1, + sym_unary_expression, + STATE(309), 1, + sym_singular_expression, + STATE(792), 1, + sym_ident, + ACTIONS(390), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(392), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(400), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(274), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(273), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(276), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(396), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(406), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12053] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(645), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12134] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(644), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12215] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(358), 1, + sym_hex_int_literal, + ACTIONS(362), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(366), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(368), 1, + anon_sym_LPAREN, + STATE(435), 1, + sym_template_elaborated_ident, + STATE(440), 1, + sym_primary_expression, + STATE(470), 1, + sym_decimal_int_literal, + STATE(496), 1, + sym_call_phrase, + STATE(557), 1, + sym_singular_expression, + STATE(643), 1, + sym_unary_expression, + STATE(829), 1, + sym_ident, + ACTIONS(354), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(356), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(364), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(474), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(467), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(493), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(360), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(370), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12296] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(322), 1, + sym_hex_int_literal, + ACTIONS(326), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(330), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(332), 1, + anon_sym_LPAREN, + STATE(466), 1, + sym_template_elaborated_ident, + STATE(504), 1, + sym_primary_expression, + STATE(548), 1, + sym_decimal_int_literal, + STATE(559), 1, + sym_call_phrase, + STATE(592), 1, + sym_unary_expression, + STATE(602), 1, + sym_singular_expression, + STATE(843), 1, + sym_ident, + ACTIONS(318), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(320), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(328), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(555), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(552), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(556), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(324), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(334), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12377] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(175), 1, + sym_hex_int_literal, + ACTIONS(179), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(183), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(185), 1, + anon_sym_LPAREN, + STATE(189), 1, + sym_template_elaborated_ident, + STATE(228), 1, + sym_primary_expression, + STATE(265), 1, + sym_decimal_int_literal, + STATE(269), 1, + sym_call_phrase, + STATE(311), 1, + sym_singular_expression, + STATE(312), 1, + sym_unary_expression, + STATE(782), 1, + sym_ident, + ACTIONS(171), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(173), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(181), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(245), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(244), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + STATE(249), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + ACTIONS(177), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(187), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12458] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(606), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12539] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(607), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12620] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(608), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12701] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(394), 1, + sym_hex_int_literal, + ACTIONS(398), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(402), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(404), 1, + anon_sym_LPAREN, + STATE(188), 1, + sym_template_elaborated_ident, + STATE(213), 1, + sym_primary_expression, + STATE(270), 1, + sym_call_phrase, + STATE(280), 1, + sym_decimal_int_literal, + STATE(308), 1, + sym_unary_expression, + STATE(309), 1, + sym_singular_expression, + STATE(792), 1, + sym_ident, + ACTIONS(390), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(392), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(400), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(274), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(273), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(276), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(396), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(406), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12782] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(340), 1, + sym_hex_int_literal, + ACTIONS(344), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(348), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(350), 1, + anon_sym_LPAREN, + STATE(333), 1, + sym_template_elaborated_ident, + STATE(381), 1, + sym_primary_expression, + STATE(390), 1, + sym_call_phrase, + STATE(399), 1, + sym_decimal_int_literal, + STATE(443), 1, + sym_singular_expression, + STATE(603), 1, + sym_unary_expression, + STATE(836), 1, + sym_ident, + ACTIONS(336), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(338), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(346), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(393), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(391), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(394), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(342), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(352), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12863] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(603), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [12944] = 21, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(304), 1, + sym_hex_int_literal, + ACTIONS(308), 1, + aux_sym_decimal_float_literal_token4, + ACTIONS(312), 1, + aux_sym_hex_float_literal_token2, + ACTIONS(314), 1, + anon_sym_LPAREN, + STATE(302), 1, + sym_template_elaborated_ident, + STATE(320), 1, + sym_primary_expression, + STATE(332), 1, + sym_call_phrase, + STATE(339), 1, + sym_decimal_int_literal, + STATE(416), 1, + sym_singular_expression, + STATE(453), 1, + sym_unary_expression, + STATE(764), 1, + sym_ident, + ACTIONS(300), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(302), 2, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + ACTIONS(310), 2, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + STATE(340), 2, + sym_decimal_float_literal, + sym_hex_float_literal, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(336), 3, + sym_literal, + sym_call_expression, + sym_paren_expression, + STATE(338), 3, + sym_bool_literal, + sym_int_literal, + sym_float_literal, + ACTIONS(306), 4, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + ACTIONS(316), 5, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [13025] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(408), 8, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(410), 23, + anon_sym_const, + anon_sym_struct, + anon_sym_alias, + anon_sym_let, + anon_sym_var, + anon_sym_override, + anon_sym__, + anon_sym_if, + anon_sym_else, + anon_sym_switch, + anon_sym_case, + anon_sym_default, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + anon_sym_fn, + sym_ident_pattern_token, + [13066] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(412), 8, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(414), 23, + anon_sym_const, + anon_sym_struct, + anon_sym_alias, + anon_sym_let, + anon_sym_var, + anon_sym_override, + anon_sym__, + anon_sym_if, + anon_sym_else, + anon_sym_switch, + anon_sym_case, + anon_sym_default, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + anon_sym_fn, + sym_ident_pattern_token, + [13107] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(416), 8, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(418), 23, + anon_sym_const, + anon_sym_struct, + anon_sym_alias, + anon_sym_let, + anon_sym_var, + anon_sym_override, + anon_sym__, + anon_sym_if, + anon_sym_else, + anon_sym_switch, + anon_sym_case, + anon_sym_default, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + anon_sym_fn, + sym_ident_pattern_token, + [13148] = 5, + ACTIONS(424), 1, + sym__template_args_start, + STATE(150), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(422), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(420), 25, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13192] = 6, + ACTIONS(428), 1, + anon_sym_AT, + ACTIONS(431), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(426), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [13238] = 5, + ACTIONS(435), 1, + anon_sym_LPAREN, + STATE(159), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(437), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(433), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13281] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(441), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(439), 25, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13319] = 6, + ACTIONS(445), 1, + anon_sym_DOT, + ACTIONS(447), 1, + anon_sym_LBRACK, + STATE(181), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(449), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(443), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13363] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(453), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(451), 25, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13401] = 6, + ACTIONS(445), 1, + anon_sym_DOT, + ACTIONS(447), 1, + anon_sym_LBRACK, + STATE(184), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(457), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(455), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13445] = 6, + ACTIONS(445), 1, + anon_sym_DOT, + ACTIONS(447), 1, + anon_sym_LBRACK, + STATE(182), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(461), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(459), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13489] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(465), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(463), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13526] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(469), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(467), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13563] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(473), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(471), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13600] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(477), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(475), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13637] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(437), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(433), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13674] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(481), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(479), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13711] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(485), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(483), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13748] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(465), 11, + anon_sym_var, + anon_sym_override, + anon_sym_SLASH, + anon_sym_PIPE, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + ACTIONS(463), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13785] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(489), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(487), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13822] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(493), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(491), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13859] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(497), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(495), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13896] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(501), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(499), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13933] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(505), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(503), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [13970] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(509), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(507), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14007] = 6, + ACTIONS(515), 1, + anon_sym_else, + STATE(194), 1, + sym_else_clause, + STATE(171), 2, + sym_else_if_clause, + aux_sym_if_statement_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(513), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(511), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14050] = 11, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(517), 1, + anon_sym_LBRACE, + ACTIONS(519), 1, + anon_sym_if, + ACTIONS(521), 1, + anon_sym_switch, + ACTIONS(523), 1, + anon_sym_loop, + ACTIONS(525), 1, + anon_sym_for, + ACTIONS(527), 1, + anon_sym_while, + STATE(172), 1, + sym_if_clause, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [14103] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(489), 11, + anon_sym_var, + anon_sym_override, + anon_sym_SLASH, + anon_sym_PIPE, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + ACTIONS(487), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14140] = 6, + ACTIONS(515), 1, + anon_sym_else, + STATE(201), 1, + sym_else_clause, + STATE(175), 2, + sym_else_if_clause, + aux_sym_if_statement_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(531), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(529), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14183] = 6, + ACTIONS(515), 1, + anon_sym_else, + STATE(220), 1, + sym_else_clause, + STATE(175), 2, + sym_else_if_clause, + aux_sym_if_statement_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(535), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(533), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14226] = 6, + ACTIONS(515), 1, + anon_sym_else, + STATE(220), 1, + sym_else_clause, + STATE(170), 2, + sym_else_if_clause, + aux_sym_if_statement_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(535), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(533), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14269] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(539), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(537), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14306] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(543), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(541), 24, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14343] = 5, + ACTIONS(549), 1, + anon_sym_else, + STATE(175), 2, + sym_else_if_clause, + aux_sym_if_statement_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(547), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(545), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14383] = 9, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(552), 1, + sym_ident_pattern_token, + ACTIONS(554), 1, + anon_sym_RPAREN, + STATE(648), 1, + sym_param, + STATE(755), 1, + sym_param_list, + STATE(756), 1, + sym_ident, + STATE(261), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [14430] = 9, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(19), 1, + anon_sym_var, + ACTIONS(25), 1, + anon_sym_fn, + ACTIONS(556), 1, + anon_sym_override, + STATE(277), 1, + sym_function_header, + STATE(688), 1, + sym_variable_decl, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [14477] = 5, + ACTIONS(558), 1, + sym__template_args_start, + STATE(221), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(422), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(420), 20, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14516] = 7, + ACTIONS(562), 1, + anon_sym_AMP, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(566), 1, + anon_sym_PIPE, + ACTIONS(568), 1, + anon_sym_CARET, + ACTIONS(570), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [14559] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(574), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(572), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14594] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(578), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(576), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14629] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(457), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(455), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14664] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(582), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(580), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14699] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(586), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(584), 22, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14734] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(588), 1, + sym__template_args_start, + STATE(217), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 22, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [14773] = 8, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(590), 1, + sym_ident_pattern_token, + ACTIONS(592), 1, + anon_sym_RBRACE, + STATE(687), 1, + sym_struct_member, + STATE(760), 1, + sym_member_ident, + STATE(253), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [14817] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(596), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(594), 17, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_else, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [14851] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(598), 1, + anon_sym_LPAREN, + STATE(266), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [14889] = 5, + ACTIONS(600), 1, + anon_sym_LPAREN, + STATE(237), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(437), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(433), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [14927] = 8, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(590), 1, + sym_ident_pattern_token, + ACTIONS(602), 1, + anon_sym_RBRACE, + STATE(687), 1, + sym_struct_member, + STATE(760), 1, + sym_member_ident, + STATE(253), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [14971] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(606), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(604), 17, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_else, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15005] = 8, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(552), 1, + sym_ident_pattern_token, + ACTIONS(608), 1, + anon_sym_RPAREN, + STATE(689), 1, + sym_param, + STATE(756), 1, + sym_ident, + STATE(261), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15049] = 8, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(552), 1, + sym_ident_pattern_token, + ACTIONS(610), 1, + anon_sym_RPAREN, + STATE(689), 1, + sym_param, + STATE(756), 1, + sym_ident, + STATE(261), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15093] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(535), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(533), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15126] = 6, + ACTIONS(612), 1, + anon_sym_DOT, + ACTIONS(614), 1, + anon_sym_LBRACK, + STATE(299), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(457), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(455), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [15165] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(691), 1, + sym_template_elaborated_ident, + STATE(764), 1, + sym_ident, + STATE(222), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15206] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(620), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(618), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15239] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(624), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(622), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15272] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(628), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(626), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15305] = 5, + ACTIONS(630), 1, + sym__template_args_start, + STATE(293), 1, + sym_template_list, + ACTIONS(422), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 19, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [15342] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(634), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(632), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15375] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(590), 1, + sym_ident_pattern_token, + STATE(687), 1, + sym_struct_member, + STATE(760), 1, + sym_member_ident, + STATE(253), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15416] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(638), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(636), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15449] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(729), 1, + sym_template_elaborated_ident, + STATE(764), 1, + sym_ident, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15490] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + ACTIONS(640), 1, + anon_sym_COLON, + STATE(673), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15531] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(689), 1, + sym_param, + STATE(756), 1, + sym_ident, + STATE(261), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15572] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(642), 1, + anon_sym_DOT, + ACTIONS(644), 1, + anon_sym_LBRACK, + STATE(307), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [15611] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + ACTIONS(646), 1, + anon_sym_COLON, + STATE(663), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15652] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 22, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [15685] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(650), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(648), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15718] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(654), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(652), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15751] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(658), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(656), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15784] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(642), 1, + anon_sym_DOT, + ACTIONS(644), 1, + anon_sym_LBRACK, + STATE(304), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [15823] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(713), 1, + sym_template_elaborated_ident, + STATE(764), 1, + sym_ident, + STATE(204), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [15864] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(642), 1, + anon_sym_DOT, + ACTIONS(644), 1, + anon_sym_LBRACK, + STATE(306), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [15903] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(662), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(660), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [15936] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 22, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [15969] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(666), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(664), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16002] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(670), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(668), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16035] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(531), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(529), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16068] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(453), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(451), 20, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16101] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(713), 1, + sym_template_elaborated_ident, + STATE(764), 1, + sym_ident, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16142] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(674), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(672), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16175] = 6, + ACTIONS(612), 1, + anon_sym_DOT, + ACTIONS(614), 1, + anon_sym_LBRACK, + STATE(294), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(461), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(459), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16214] = 18, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(43), 1, + anon_sym_var, + ACTIONS(47), 1, + anon_sym__, + ACTIONS(676), 1, + anon_sym_SEMI, + STATE(406), 1, + sym_core_lhs_expression, + STATE(437), 1, + sym_lhs_expression, + STATE(702), 1, + sym_template_elaborated_ident, + STATE(703), 1, + sym_variable_decl, + STATE(705), 1, + sym_call_phrase, + STATE(749), 1, + sym_for_init, + STATE(795), 1, + sym_ident, + STATE(823), 1, + sym_for_header, + ACTIONS(37), 2, + anon_sym_const, + anon_sym_let, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(706), 3, + sym_assignment_statement, + sym_increment_statement, + sym_decrement_statement, + STATE(787), 3, + sym_variable_or_value_statement, + sym_func_call_statement, + sym_variable_updating_statement, + [16277] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(590), 1, + sym_ident_pattern_token, + STATE(655), 1, + sym_struct_member, + STATE(760), 1, + sym_member_ident, + STATE(253), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16318] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(680), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(678), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16351] = 6, + ACTIONS(612), 1, + anon_sym_DOT, + ACTIONS(614), 1, + anon_sym_LBRACK, + STATE(305), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(449), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(443), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16390] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(684), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(682), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16423] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(688), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(686), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16456] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(692), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(690), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16489] = 7, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + ACTIONS(694), 1, + anon_sym_if, + STATE(219), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16530] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(441), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(439), 20, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16563] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(698), 7, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(696), 16, + anon_sym_const, + anon_sym_let, + anon_sym_var, + anon_sym__, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_break, + sym_continue_statement, + anon_sym_continuing, + anon_sym_return, + anon_sym_const_assert, + anon_sym_discard, + sym_ident_pattern_token, + [16596] = 18, + ACTIONS(31), 1, + sym_ident_pattern_token, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(43), 1, + anon_sym_var, + ACTIONS(47), 1, + anon_sym__, + ACTIONS(676), 1, + anon_sym_SEMI, + STATE(406), 1, + sym_core_lhs_expression, + STATE(437), 1, + sym_lhs_expression, + STATE(702), 1, + sym_template_elaborated_ident, + STATE(703), 1, + sym_variable_decl, + STATE(705), 1, + sym_call_phrase, + STATE(749), 1, + sym_for_init, + STATE(788), 1, + sym_for_header, + STATE(795), 1, + sym_ident, + ACTIONS(37), 2, + anon_sym_const, + anon_sym_let, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(706), 3, + sym_assignment_statement, + sym_increment_statement, + sym_decrement_statement, + STATE(787), 3, + sym_variable_or_value_statement, + sym_func_call_statement, + sym_variable_updating_statement, + [16659] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(477), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(475), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16691] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(485), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(483), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16723] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(191), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16761] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(700), 1, + anon_sym_LBRACE, + STATE(203), 1, + sym_switch_body, + STATE(284), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16799] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(570), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [16833] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(211), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [16871] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(539), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(537), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16903] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(501), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(499), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16935] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(497), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(495), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16967] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(493), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(491), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [16999] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(223), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17037] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(543), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(541), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17069] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(187), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17107] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(437), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(433), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17139] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(473), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(471), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17171] = 3, + ACTIONS(441), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 20, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + sym_ident_pattern_token, + [17203] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(489), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(487), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17235] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(590), 1, + sym_ident_pattern_token, + STATE(783), 1, + sym_member_ident, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17273] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(585), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17311] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(198), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17349] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(656), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17387] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17419] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17451] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(230), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17489] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(481), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(479), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17521] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(785), 1, + sym_ident, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17559] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17591] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(465), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(463), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17623] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(700), 1, + anon_sym_LBRACE, + STATE(197), 1, + sym_switch_body, + STATE(284), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [17661] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(509), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(507), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17693] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17725] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17757] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(505), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(503), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17789] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(469), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(467), 19, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [17821] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17853] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17885] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17917] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17949] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [17981] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(662), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18019] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18051] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(39), 1, + anon_sym_LBRACE, + STATE(579), 1, + sym_compound_statement, + STATE(289), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18089] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18121] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18153] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18185] = 6, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(702), 1, + anon_sym_LBRACE, + STATE(813), 1, + sym_continuing_compound_statement, + STATE(292), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18223] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 21, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18255] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(129), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 17, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18290] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(710), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18325] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(712), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18360] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(714), 1, + sym__template_args_start, + STATE(316), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 18, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18395] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(129), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 17, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18430] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(718), 1, + anon_sym_LBRACE, + STATE(291), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18465] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(517), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18500] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(720), 1, + anon_sym_LBRACE, + STATE(285), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18535] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(720), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18570] = 5, + ACTIONS(11), 1, + anon_sym_AT, + ACTIONS(722), 1, + anon_sym_LBRACE, + STATE(146), 2, + sym_attribute, + aux_sym_struct_member_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(554), 17, + sym_align_attr, + sym_binding_attr, + sym_blend_src_attr, + sym_builtin_attr, + sym_const_attr, + sym_diagnostic_attr, + sym_group_attr, + sym_id_attr, + sym_interpolate_attr, + sym_invariant_attr, + sym_location_attr, + sym_must_use_attr, + sym_size_attr, + sym_workgroup_size_attr, + sym_vertex_attr, + sym_fragment_attr, + sym_compute_attr, + [18605] = 3, + ACTIONS(453), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 19, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [18636] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(457), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(455), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [18666] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(724), 1, + sym__template_args_start, + STATE(344), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18700] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(726), 8, + anon_sym_true, + anon_sym_false, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + sym_hex_int_literal, + aux_sym_decimal_float_literal_token4, + aux_sym_hex_float_literal_token2, + sym_ident_pattern_token, + ACTIONS(728), 12, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [18730] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(730), 1, + anon_sym_LPAREN, + STATE(331), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18764] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(732), 8, + anon_sym_true, + anon_sym_false, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + sym_hex_int_literal, + aux_sym_decimal_float_literal_token4, + aux_sym_hex_float_literal_token2, + sym_ident_pattern_token, + ACTIONS(734), 12, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [18794] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(586), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(584), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [18824] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(736), 8, + anon_sym_true, + anon_sym_false, + aux_sym_decimal_int_literal_token1, + aux_sym_decimal_int_literal_token2, + sym_hex_int_literal, + aux_sym_decimal_float_literal_token4, + aux_sym_hex_float_literal_token2, + sym_ident_pattern_token, + ACTIONS(738), 12, + aux_sym_decimal_float_literal_token1, + aux_sym_decimal_float_literal_token2, + aux_sym_decimal_float_literal_token3, + aux_sym_decimal_float_literal_token5, + aux_sym_hex_float_literal_token1, + aux_sym_hex_float_literal_token3, + anon_sym_LPAREN, + anon_sym_DASH, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_STAR, + anon_sym_AMP, + [18854] = 3, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18884] = 5, + ACTIONS(740), 1, + anon_sym_LPAREN, + STATE(328), 1, + sym_argument_expression_list, + ACTIONS(437), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [18918] = 3, + ACTIONS(744), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(742), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18948] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [18978] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(578), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(576), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19008] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19038] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19068] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19098] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 19, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19128] = 7, + ACTIONS(562), 1, + anon_sym_AMP, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(566), 1, + anon_sym_PIPE, + ACTIONS(568), 1, + anon_sym_CARET, + ACTIONS(746), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19166] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(574), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(572), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19196] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(582), 3, + anon_sym_AMP, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(580), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__shift_left, + sym__greater_than, + sym__greater_than_equal, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19226] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 18, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19255] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(748), 1, + anon_sym_DOT, + ACTIONS(750), 1, + anon_sym_LBRACK, + STATE(409), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19290] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(748), 1, + anon_sym_DOT, + ACTIONS(750), 1, + anon_sym_LBRACK, + STATE(410), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19325] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 18, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19354] = 6, + ACTIONS(752), 1, + anon_sym_DOT, + ACTIONS(754), 1, + anon_sym_LBRACK, + STATE(387), 1, + sym_component_or_swizzle_specifier, + ACTIONS(461), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19389] = 6, + ACTIONS(752), 1, + anon_sym_DOT, + ACTIONS(754), 1, + anon_sym_LBRACK, + STATE(385), 1, + sym_component_or_swizzle_specifier, + ACTIONS(457), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19424] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(756), 1, + sym__template_args_start, + STATE(376), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19457] = 6, + ACTIONS(752), 1, + anon_sym_DOT, + ACTIONS(754), 1, + anon_sym_LBRACK, + STATE(412), 1, + sym_component_or_swizzle_specifier, + ACTIONS(449), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19492] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(758), 1, + anon_sym_LPAREN, + STATE(366), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19525] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(748), 1, + anon_sym_DOT, + ACTIONS(750), 1, + anon_sym_LBRACK, + STATE(404), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19560] = 3, + ACTIONS(477), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19588] = 3, + ACTIONS(539), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19616] = 3, + ACTIONS(505), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19644] = 3, + ACTIONS(473), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19672] = 8, + ACTIONS(762), 1, + anon_sym_diagnostic, + ACTIONS(765), 1, + anon_sym_const, + ACTIONS(767), 1, + anon_sym_enable, + ACTIONS(770), 1, + anon_sym_requires, + STATE(327), 2, + sym_global_directive, + aux_sym_translation_unit_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(463), 3, + sym_diagnostic_directive, + sym_enable_directive, + sym_requires_directive, + ACTIONS(760), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [19710] = 3, + ACTIONS(485), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19738] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19766] = 19, + ACTIONS(773), 1, + sym_ident_pattern_token, + ACTIONS(775), 1, + anon_sym_diagnostic, + ACTIONS(777), 1, + anon_sym_align, + ACTIONS(779), 1, + anon_sym_binding, + ACTIONS(781), 1, + anon_sym_blend_src, + ACTIONS(783), 1, + anon_sym_builtin, + ACTIONS(785), 1, + anon_sym_const, + ACTIONS(787), 1, + anon_sym_group, + ACTIONS(789), 1, + anon_sym_id, + ACTIONS(791), 1, + anon_sym_interpolate, + ACTIONS(793), 1, + anon_sym_invariant, + ACTIONS(795), 1, + anon_sym_location, + ACTIONS(797), 1, + anon_sym_must_use, + ACTIONS(799), 1, + anon_sym_size, + ACTIONS(801), 1, + anon_sym_workgroup_size, + ACTIONS(803), 1, + anon_sym_vertex, + ACTIONS(805), 1, + anon_sym_fragment, + ACTIONS(807), 1, + anon_sym_compute, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [19826] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19854] = 3, + ACTIONS(469), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [19882] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(809), 1, + anon_sym_LPAREN, + STATE(407), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19914] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(811), 1, + anon_sym_DOT, + ACTIONS(813), 1, + anon_sym_LBRACK, + STATE(431), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19948] = 4, + STATE(113), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 15, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [19978] = 3, + ACTIONS(437), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20006] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20034] = 3, + ACTIONS(497), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20062] = 3, + ACTIONS(509), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20090] = 3, + ACTIONS(493), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20118] = 5, + ACTIONS(420), 1, + anon_sym_LPAREN, + ACTIONS(630), 1, + sym__template_args_start, + STATE(293), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(819), 15, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [20150] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20178] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20206] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20234] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20262] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20290] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20318] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20346] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20374] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20402] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20430] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20458] = 3, + ACTIONS(501), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20486] = 3, + ACTIONS(543), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20514] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 17, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20542] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(811), 1, + anon_sym_DOT, + ACTIONS(813), 1, + anon_sym_LBRACK, + STATE(419), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20576] = 3, + ACTIONS(481), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [20604] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20632] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 17, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20660] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(811), 1, + anon_sym_DOT, + ACTIONS(813), 1, + anon_sym_LBRACK, + STATE(422), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20694] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20721] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20748] = 14, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(47), 1, + anon_sym__, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(821), 1, + anon_sym_RPAREN, + STATE(406), 1, + sym_core_lhs_expression, + STATE(437), 1, + sym_lhs_expression, + STATE(702), 1, + sym_template_elaborated_ident, + STATE(705), 1, + sym_call_phrase, + STATE(795), 1, + sym_ident, + STATE(890), 1, + sym_for_update, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + STATE(852), 2, + sym_func_call_statement, + sym_variable_updating_statement, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(706), 3, + sym_assignment_statement, + sym_increment_statement, + sym_decrement_statement, + [20797] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20824] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20851] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20878] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20905] = 14, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(47), 1, + anon_sym__, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(823), 1, + anon_sym_RPAREN, + STATE(406), 1, + sym_core_lhs_expression, + STATE(437), 1, + sym_lhs_expression, + STATE(702), 1, + sym_template_elaborated_ident, + STATE(705), 1, + sym_call_phrase, + STATE(795), 1, + sym_ident, + STATE(870), 1, + sym_for_update, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + STATE(852), 2, + sym_func_call_statement, + sym_variable_updating_statement, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(706), 3, + sym_assignment_statement, + sym_increment_statement, + sym_decrement_statement, + [20954] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(746), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [20983] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21010] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21037] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21064] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(825), 1, + anon_sym_DOT, + ACTIONS(827), 1, + anon_sym_LBRACK, + STATE(448), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21097] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21124] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21151] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 16, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21178] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21205] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21232] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(825), 1, + anon_sym_DOT, + ACTIONS(827), 1, + anon_sym_LBRACK, + STATE(441), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21265] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21292] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(825), 1, + anon_sym_DOT, + ACTIONS(827), 1, + anon_sym_LBRACK, + STATE(455), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21325] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21352] = 14, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(47), 1, + anon_sym__, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(829), 1, + anon_sym_RPAREN, + STATE(406), 1, + sym_core_lhs_expression, + STATE(437), 1, + sym_lhs_expression, + STATE(702), 1, + sym_template_elaborated_ident, + STATE(705), 1, + sym_call_phrase, + STATE(795), 1, + sym_ident, + STATE(850), 1, + sym_for_update, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + STATE(852), 2, + sym_func_call_statement, + sym_variable_updating_statement, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + STATE(706), 3, + sym_assignment_statement, + sym_increment_statement, + sym_decrement_statement, + [21401] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 16, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21428] = 3, + ACTIONS(586), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [21454] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21480] = 3, + ACTIONS(457), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [21506] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(128), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 12, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21536] = 5, + ACTIONS(831), 1, + anon_sym_DOT, + ACTIONS(833), 1, + anon_sym_LBRACK, + STATE(492), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [21566] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21592] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21618] = 5, + ACTIONS(831), 1, + anon_sym_DOT, + ACTIONS(833), 1, + anon_sym_LBRACK, + STATE(483), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [21648] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21674] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21700] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21726] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21752] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(128), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 12, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21782] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21808] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21834] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21860] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21886] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21912] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21938] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21964] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(835), 1, + sym__template_args_start, + STATE(438), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 13, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [21994] = 5, + ACTIONS(831), 1, + anon_sym_DOT, + ACTIONS(833), 1, + anon_sym_LBRACK, + STATE(462), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(837), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [22024] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22050] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22076] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22102] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 15, + sym__shift_left, + sym__shift_right, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22128] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22154] = 3, + ACTIONS(578), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22180] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(839), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22208] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 15, + anon_sym_SEMI, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22234] = 3, + ACTIONS(582), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22260] = 3, + ACTIONS(574), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22286] = 5, + ACTIONS(841), 1, + sym__template_args_start, + STATE(445), 1, + sym_template_list, + ACTIONS(422), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 12, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22316] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 15, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [22339] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22364] = 3, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22389] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(123), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 11, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22418] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22443] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(845), 6, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(843), 9, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22468] = 3, + ACTIONS(744), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(742), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22493] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(847), 1, + anon_sym_LPAREN, + STATE(478), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22522] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(123), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 11, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22551] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 15, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [22574] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(849), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 12, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [22601] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22626] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(851), 15, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [22649] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22674] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(819), 15, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_DOT, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [22697] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(853), 15, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22720] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 14, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22745] = 5, + ACTIONS(855), 1, + anon_sym_LPAREN, + STATE(488), 1, + sym_argument_expression_list, + ACTIONS(437), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22774] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22798] = 6, + ACTIONS(857), 1, + anon_sym_EQ, + ACTIONS(861), 1, + anon_sym_PLUS_PLUS, + ACTIONS(863), 1, + anon_sym_DASH_DASH, + STATE(68), 1, + sym_compound_assignment_operator, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(859), 10, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + [22828] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 13, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22852] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(865), 6, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(843), 8, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_PIPE_PIPE, + [22876] = 6, + ACTIONS(867), 1, + anon_sym_DOT, + ACTIONS(869), 1, + anon_sym_LBRACK, + STATE(543), 1, + sym_component_or_swizzle_specifier, + ACTIONS(449), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [22906] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22930] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(871), 1, + anon_sym_DOT, + ACTIONS(873), 1, + anon_sym_LBRACK, + STATE(544), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22960] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [22984] = 6, + ACTIONS(867), 1, + anon_sym_DOT, + ACTIONS(869), 1, + anon_sym_LBRACK, + STATE(536), 1, + sym_component_or_swizzle_specifier, + ACTIONS(461), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23014] = 3, + ACTIONS(453), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 12, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23038] = 3, + ACTIONS(441), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 12, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23062] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(141), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 10, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [23090] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23114] = 5, + ACTIONS(422), 1, + anon_sym_SLASH, + ACTIONS(875), 1, + sym__template_args_start, + STATE(499), 1, + sym_template_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(420), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23142] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(141), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 10, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [23170] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(871), 1, + anon_sym_DOT, + ACTIONS(873), 1, + anon_sym_LBRACK, + STATE(524), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23200] = 6, + ACTIONS(867), 1, + anon_sym_DOT, + ACTIONS(869), 1, + anon_sym_LBRACK, + STATE(540), 1, + sym_component_or_swizzle_specifier, + ACTIONS(457), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23230] = 3, + ACTIONS(744), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(742), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23254] = 3, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23278] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 13, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23302] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 13, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23326] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(871), 1, + anon_sym_DOT, + ACTIONS(873), 1, + anon_sym_LBRACK, + STATE(571), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23356] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23379] = 4, + STATE(112), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 10, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23404] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23427] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23450] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(877), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [23471] = 3, + ACTIONS(881), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(879), 12, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_diagnostic, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + anon_sym_enable, + anon_sym_requires, + [23494] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23517] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23540] = 5, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(883), 1, + anon_sym_LPAREN, + STATE(564), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23567] = 3, + ACTIONS(437), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23590] = 3, + ACTIONS(539), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23613] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23636] = 3, + ACTIONS(509), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23659] = 3, + ACTIONS(489), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23682] = 3, + ACTIONS(481), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23705] = 3, + ACTIONS(887), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(885), 12, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_diagnostic, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + anon_sym_enable, + anon_sym_requires, + [23728] = 3, + ACTIONS(493), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23751] = 3, + ACTIONS(477), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23774] = 3, + ACTIONS(891), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(889), 12, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_diagnostic, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + anon_sym_enable, + anon_sym_requires, + [23797] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23820] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23843] = 5, + ACTIONS(740), 1, + anon_sym_LPAREN, + STATE(510), 1, + sym_argument_expression_list, + ACTIONS(895), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(893), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [23870] = 3, + ACTIONS(543), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23893] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23916] = 3, + ACTIONS(501), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [23939] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [23960] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [23983] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24006] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24029] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24052] = 3, + ACTIONS(485), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24075] = 3, + ACTIONS(473), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24098] = 3, + ACTIONS(899), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(897), 12, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_diagnostic, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + anon_sym_enable, + anon_sym_requires, + [24121] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24144] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 13, + sym__shift_left_assign, + sym__shift_right_assign, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_PLUS_PLUS, + anon_sym_DASH_DASH, + [24165] = 3, + ACTIONS(497), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24188] = 3, + ACTIONS(465), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24211] = 3, + ACTIONS(505), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24234] = 3, + ACTIONS(469), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [24257] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 12, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24280] = 3, + ACTIONS(441), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(439), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24302] = 3, + ACTIONS(453), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(451), 11, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24324] = 6, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(901), 1, + anon_sym_DOT, + ACTIONS(903), 1, + anon_sym_LBRACK, + STATE(598), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24352] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(907), 3, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(905), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24374] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(911), 3, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(909), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24396] = 4, + STATE(110), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 9, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24420] = 6, + ACTIONS(449), 1, + anon_sym_SLASH, + ACTIONS(901), 1, + anon_sym_DOT, + ACTIONS(903), 1, + anon_sym_LBRACK, + STATE(595), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(443), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24448] = 6, + ACTIONS(461), 1, + anon_sym_SLASH, + ACTIONS(901), 1, + anon_sym_DOT, + ACTIONS(903), 1, + anon_sym_LBRACK, + STATE(596), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(459), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24476] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24497] = 3, + ACTIONS(915), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(913), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24518] = 4, + ACTIONS(590), 1, + sym_ident_pattern_token, + STATE(317), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(917), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24541] = 4, + ACTIONS(919), 1, + sym_ident_pattern_token, + STATE(152), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(921), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24564] = 3, + ACTIONS(925), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(923), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24585] = 3, + ACTIONS(501), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(499), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24606] = 3, + ACTIONS(929), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(927), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24627] = 3, + ACTIONS(933), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(931), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24648] = 3, + ACTIONS(937), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(935), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24669] = 3, + ACTIONS(941), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(939), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24690] = 4, + ACTIONS(943), 1, + sym_ident_pattern_token, + STATE(356), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(945), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24713] = 4, + ACTIONS(947), 1, + sym_ident_pattern_token, + STATE(314), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(949), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24736] = 4, + ACTIONS(951), 1, + sym_ident_pattern_token, + STATE(442), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(953), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24759] = 4, + ACTIONS(955), 1, + sym_ident_pattern_token, + STATE(215), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(957), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24782] = 3, + ACTIONS(961), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(959), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24803] = 3, + ACTIONS(965), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(963), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24824] = 4, + ACTIONS(967), 1, + sym_ident_pattern_token, + STATE(444), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(969), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [24847] = 3, + ACTIONS(973), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(971), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24868] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [24889] = 3, + ACTIONS(977), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(975), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24910] = 3, + ACTIONS(981), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(979), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24931] = 3, + ACTIONS(985), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(983), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24952] = 3, + ACTIONS(989), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(987), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24973] = 3, + ACTIONS(993), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(991), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [24994] = 3, + ACTIONS(997), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(995), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25015] = 3, + ACTIONS(1001), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(999), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25036] = 3, + ACTIONS(1005), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1003), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25057] = 3, + ACTIONS(1009), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1007), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25078] = 3, + ACTIONS(1013), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1011), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25099] = 3, + ACTIONS(1017), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1015), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25120] = 3, + ACTIONS(457), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [25141] = 3, + ACTIONS(1021), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1019), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25162] = 3, + ACTIONS(1025), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1023), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25183] = 3, + ACTIONS(1029), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1027), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25204] = 3, + ACTIONS(586), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [25225] = 3, + ACTIONS(473), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(471), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25246] = 3, + ACTIONS(543), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(541), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25267] = 3, + ACTIONS(578), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [25288] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25309] = 3, + ACTIONS(1033), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1031), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25330] = 3, + ACTIONS(1037), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1035), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25351] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(1039), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25374] = 3, + ACTIONS(509), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(507), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25395] = 3, + ACTIONS(539), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(537), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25416] = 4, + ACTIONS(1041), 1, + sym_ident_pattern_token, + STATE(224), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1043), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [25439] = 4, + ACTIONS(1045), 1, + sym_ident_pattern_token, + STATE(373), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1047), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [25462] = 3, + ACTIONS(497), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(495), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25483] = 4, + ACTIONS(1049), 1, + sym_ident_pattern_token, + STATE(505), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1051), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [25506] = 3, + ACTIONS(1055), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1053), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25527] = 3, + ACTIONS(493), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(491), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25548] = 3, + ACTIONS(437), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(433), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25569] = 3, + ACTIONS(574), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [25590] = 3, + ACTIONS(1059), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1057), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25611] = 3, + ACTIONS(469), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(467), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25632] = 4, + ACTIONS(1061), 1, + sym_ident_pattern_token, + STATE(389), 2, + sym_member_ident, + sym_swizzle_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1063), 8, + aux_sym_swizzle_name_token1, + aux_sym_swizzle_name_token2, + aux_sym_swizzle_name_token3, + aux_sym_swizzle_name_token4, + aux_sym_swizzle_name_token5, + aux_sym_swizzle_name_token6, + aux_sym_swizzle_name_token7, + aux_sym_swizzle_name_token8, + [25655] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25676] = 3, + ACTIONS(582), 2, + anon_sym_SLASH, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 9, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + anon_sym_CARET, + [25697] = 3, + ACTIONS(1067), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1065), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25718] = 3, + ACTIONS(485), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(483), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25739] = 4, + STATE(108), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 8, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_PIPE_PIPE, + [25762] = 3, + ACTIONS(1071), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1069), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25783] = 3, + ACTIONS(1075), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1073), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25804] = 3, + ACTIONS(1079), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1077), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25825] = 3, + ACTIONS(481), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(479), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25846] = 3, + ACTIONS(465), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(463), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25867] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 10, + sym__template_args_end, + sym__shift_left, + sym__shift_right, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25888] = 3, + ACTIONS(477), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(475), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25909] = 3, + ACTIONS(1083), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1081), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25930] = 3, + ACTIONS(505), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(503), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [25951] = 3, + ACTIONS(1087), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1085), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25972] = 3, + ACTIONS(1091), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1089), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [25993] = 3, + ACTIONS(489), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(487), 10, + sym__template_args_end, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26014] = 3, + ACTIONS(1095), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1093), 9, + anon_sym_var, + anon_sym_override, + anon_sym_if, + anon_sym_switch, + anon_sym_loop, + anon_sym_for, + anon_sym_while, + anon_sym_fn, + sym_ident_pattern_token, + [26035] = 3, + ACTIONS(1099), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1097), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26055] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(853), 10, + sym__template_args_end, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26073] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(133), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 6, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26097] = 3, + ACTIONS(1103), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1101), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26117] = 3, + ACTIONS(1105), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(231), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26137] = 3, + ACTIONS(1109), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1107), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26157] = 3, + ACTIONS(1113), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1111), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26177] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(843), 4, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + ACTIONS(1115), 6, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [26197] = 4, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(1117), 2, + sym__shift_left, + sym__shift_right, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 7, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [26219] = 3, + ACTIONS(1121), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1119), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26239] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(133), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 6, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26263] = 3, + ACTIONS(1125), 1, + anon_sym_const, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1123), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_AT, + anon_sym_struct, + anon_sym_alias, + anon_sym_var, + anon_sym_override, + anon_sym_const_assert, + anon_sym_fn, + [26283] = 3, + ACTIONS(564), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(560), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26302] = 3, + ACTIONS(744), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(742), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26321] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(119), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(704), 5, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [26344] = 3, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(843), 3, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_PIPE_PIPE, + ACTIONS(1127), 6, + sym__less_than, + sym__less_than_equal, + sym__greater_than, + sym__greater_than_equal, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [26363] = 3, + ACTIONS(578), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(576), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26382] = 3, + ACTIONS(457), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(455), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26401] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1129), 9, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26418] = 3, + ACTIONS(586), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(584), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26437] = 4, + ACTIONS(1133), 1, + anon_sym_AMP_AMP, + ACTIONS(1135), 1, + anon_sym_PIPE_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1131), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26458] = 5, + ACTIONS(708), 1, + anon_sym_SLASH, + STATE(119), 1, + sym_multiplicative_operator, + ACTIONS(706), 2, + anon_sym_STAR, + anon_sym_PERCENT, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(716), 5, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_PIPE_PIPE, + [26481] = 3, + ACTIONS(582), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(580), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26500] = 3, + ACTIONS(574), 1, + anon_sym_SLASH, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(572), 8, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_PERCENT, + anon_sym_PLUS, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26519] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(853), 9, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26536] = 3, + ACTIONS(1139), 1, + anon_sym_AMP_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1137), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26554] = 3, + ACTIONS(1141), 1, + anon_sym_PIPE_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1137), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26572] = 3, + ACTIONS(1145), 1, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1143), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26590] = 3, + ACTIONS(1147), 1, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1143), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26608] = 3, + ACTIONS(1149), 1, + anon_sym_CARET, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1143), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26626] = 7, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(1151), 1, + anon_sym_LPAREN, + STATE(634), 1, + sym_core_lhs_expression, + STATE(753), 1, + sym_lhs_expression, + STATE(754), 1, + sym_ident, + ACTIONS(1153), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26651] = 7, + ACTIONS(35), 1, + anon_sym_LPAREN, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(406), 1, + sym_core_lhs_expression, + STATE(462), 1, + sym_lhs_expression, + STATE(780), 1, + sym_ident, + ACTIONS(45), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26676] = 7, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(1151), 1, + anon_sym_LPAREN, + STATE(634), 1, + sym_core_lhs_expression, + STATE(754), 1, + sym_ident, + STATE(781), 1, + sym_lhs_expression, + ACTIONS(1153), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26701] = 4, + STATE(109), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 4, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [26720] = 6, + ACTIONS(1155), 1, + anon_sym_RBRACE, + ACTIONS(1157), 1, + anon_sym_case, + ACTIONS(1159), 1, + anon_sym_default, + STATE(617), 2, + sym_switch_clause, + aux_sym_switch_body_repeat1, + STATE(684), 2, + sym_case_clause, + sym_default_alone_clause, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26743] = 6, + ACTIONS(1157), 1, + anon_sym_case, + ACTIONS(1159), 1, + anon_sym_default, + ACTIONS(1161), 1, + anon_sym_RBRACE, + STATE(617), 2, + sym_switch_clause, + aux_sym_switch_body_repeat1, + STATE(684), 2, + sym_case_clause, + sym_default_alone_clause, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26766] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1131), 7, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_RPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_RBRACK, + [26781] = 7, + ACTIONS(616), 1, + sym_ident_pattern_token, + ACTIONS(1151), 1, + anon_sym_LPAREN, + STATE(634), 1, + sym_core_lhs_expression, + STATE(754), 1, + sym_ident, + STATE(895), 1, + sym_lhs_expression, + ACTIONS(1153), 2, + anon_sym_STAR, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26806] = 6, + ACTIONS(1163), 1, + anon_sym_RBRACE, + ACTIONS(1165), 1, + anon_sym_case, + ACTIONS(1168), 1, + anon_sym_default, + STATE(617), 2, + sym_switch_clause, + aux_sym_switch_body_repeat1, + STATE(684), 2, + sym_case_clause, + sym_default_alone_clause, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26829] = 4, + STATE(111), 1, + sym_additive_operator, + ACTIONS(817), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(815), 3, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_PIPE_PIPE, + [26847] = 5, + ACTIONS(1157), 1, + anon_sym_case, + ACTIONS(1159), 1, + anon_sym_default, + STATE(614), 2, + sym_switch_clause, + aux_sym_switch_body_repeat1, + STATE(684), 2, + sym_case_clause, + sym_default_alone_clause, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26867] = 5, + ACTIONS(1157), 1, + anon_sym_case, + ACTIONS(1159), 1, + anon_sym_default, + STATE(613), 2, + sym_switch_clause, + aux_sym_switch_body_repeat1, + STATE(684), 2, + sym_case_clause, + sym_default_alone_clause, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26887] = 4, + ACTIONS(1171), 1, + anon_sym_COMMA, + STATE(624), 1, + aux_sym_case_selectors_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(169), 3, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + [26904] = 6, + ACTIONS(552), 1, + sym_ident_pattern_token, + ACTIONS(630), 1, + sym__template_args_start, + STATE(658), 1, + sym_ident, + STATE(679), 1, + sym_template_list, + STATE(700), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [26925] = 4, + ACTIONS(1173), 1, + anon_sym_COMMA, + STATE(621), 1, + aux_sym_case_selectors_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1175), 3, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + [26942] = 4, + ACTIONS(1177), 1, + anon_sym_COMMA, + STATE(624), 1, + aux_sym_case_selectors_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1180), 3, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + [26959] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1182), 5, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_EQ, + [26972] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1184), 5, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_RBRACE, + anon_sym_EQ, + [26985] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1180), 4, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + [26997] = 4, + ACTIONS(1133), 1, + anon_sym_AMP_AMP, + ACTIONS(1135), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1131), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27013] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(694), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27031] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(714), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27049] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(690), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27067] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(853), 4, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [27079] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1186), 4, + anon_sym_COMMA, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_COLON, + [27091] = 5, + ACTIONS(752), 1, + anon_sym_DOT, + ACTIONS(754), 1, + anon_sym_LBRACK, + ACTIONS(837), 1, + anon_sym_RPAREN, + STATE(895), 1, + sym_component_or_swizzle_specifier, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27109] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1129), 4, + sym__template_args_end, + anon_sym_COMMA, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + [27121] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(712), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27139] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(748), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27157] = 5, + ACTIONS(616), 1, + sym_ident_pattern_token, + STATE(626), 1, + sym_template_elaborated_ident, + STATE(759), 1, + sym_type_specifier, + STATE(764), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27175] = 4, + ACTIONS(1188), 1, + anon_sym_SEMI, + ACTIONS(1190), 1, + anon_sym_COMMA, + STATE(639), 1, + aux_sym_enable_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27190] = 4, + ACTIONS(1193), 1, + anon_sym_COMMA, + ACTIONS(1196), 1, + anon_sym_RBRACE, + STATE(640), 1, + aux_sym_struct_body_decl_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27205] = 4, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(658), 1, + sym_ident, + STATE(869), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27220] = 3, + ACTIONS(1200), 1, + anon_sym_DASH_GT, + ACTIONS(1198), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27233] = 3, + ACTIONS(1149), 1, + anon_sym_CARET, + ACTIONS(1143), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27246] = 3, + ACTIONS(1147), 1, + anon_sym_AMP, + ACTIONS(1143), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27259] = 3, + ACTIONS(1145), 1, + anon_sym_PIPE, + ACTIONS(1143), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27272] = 3, + ACTIONS(1141), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1137), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27285] = 3, + ACTIONS(1139), 1, + anon_sym_AMP_AMP, + ACTIONS(1137), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27298] = 4, + ACTIONS(1202), 1, + anon_sym_COMMA, + ACTIONS(1204), 1, + anon_sym_RPAREN, + STATE(674), 1, + aux_sym_param_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27313] = 4, + ACTIONS(1206), 1, + sym_ident_pattern_token, + ACTIONS(1208), 1, + anon_sym_SEMI, + STATE(743), 1, + sym_enable_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27328] = 4, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(658), 1, + sym_ident, + STATE(735), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27343] = 4, + ACTIONS(1210), 1, + sym_ident_pattern_token, + ACTIONS(1212), 1, + anon_sym_SEMI, + STATE(741), 1, + sym_software_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27358] = 4, + ACTIONS(1206), 1, + sym_ident_pattern_token, + STATE(666), 1, + sym_enable_extension_name, + STATE(856), 1, + sym_enable_extension_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27373] = 4, + ACTIONS(1210), 1, + sym_ident_pattern_token, + STATE(668), 1, + sym_software_extension_name, + STATE(846), 1, + sym_software_extension_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27388] = 4, + ACTIONS(1214), 1, + anon_sym_SEMI, + ACTIONS(1216), 1, + anon_sym_COMMA, + STATE(654), 1, + aux_sym_software_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27403] = 4, + ACTIONS(1219), 1, + anon_sym_COMMA, + ACTIONS(1221), 1, + anon_sym_RBRACE, + STATE(670), 1, + aux_sym_struct_body_decl_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27418] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1223), 3, + anon_sym_RBRACE, + anon_sym_case, + anon_sym_default, + [27429] = 4, + ACTIONS(1225), 1, + anon_sym_COMMA, + ACTIONS(1227), 1, + anon_sym_RPAREN, + STATE(667), 1, + aux_sym_expression_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27444] = 3, + ACTIONS(1231), 1, + anon_sym_COLON, + ACTIONS(1229), 2, + anon_sym_SEMI, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27457] = 4, + ACTIONS(1233), 1, + anon_sym_COMMA, + ACTIONS(1235), 1, + sym__template_args_end, + STATE(671), 1, + aux_sym_template_arg_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27472] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1237), 3, + anon_sym_DOT, + anon_sym_COMMA, + anon_sym_RPAREN, + [27483] = 3, + ACTIONS(1239), 1, + anon_sym_DOT, + ACTIONS(1241), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27496] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1243), 3, + anon_sym_RBRACE, + anon_sym_case, + anon_sym_default, + [27507] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1245), 3, + anon_sym_RBRACE, + anon_sym_case, + anon_sym_default, + [27518] = 4, + ACTIONS(1206), 1, + sym_ident_pattern_token, + ACTIONS(1247), 1, + anon_sym_SEMI, + STATE(743), 1, + sym_enable_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27533] = 4, + ACTIONS(1249), 1, + sym_ident_pattern_token, + ACTIONS(1251), 1, + anon_sym_RPAREN, + STATE(698), 1, + sym_interpolate_sampling_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27548] = 4, + ACTIONS(1253), 1, + anon_sym_SEMI, + ACTIONS(1255), 1, + anon_sym_COMMA, + STATE(682), 1, + aux_sym_enable_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27563] = 4, + ACTIONS(219), 1, + anon_sym_RPAREN, + ACTIONS(1257), 1, + anon_sym_COMMA, + STATE(680), 1, + aux_sym_expression_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27578] = 4, + ACTIONS(1259), 1, + anon_sym_SEMI, + ACTIONS(1261), 1, + anon_sym_COMMA, + STATE(685), 1, + aux_sym_software_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27593] = 4, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(658), 1, + sym_ident, + STATE(707), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27608] = 4, + ACTIONS(602), 1, + anon_sym_RBRACE, + ACTIONS(1263), 1, + anon_sym_COMMA, + STATE(640), 1, + aux_sym_struct_body_decl_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27623] = 4, + ACTIONS(209), 1, + sym__template_args_end, + ACTIONS(1265), 1, + anon_sym_COMMA, + STATE(681), 1, + aux_sym_template_arg_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27638] = 3, + ACTIONS(1269), 1, + anon_sym_DASH_GT, + ACTIONS(1267), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27651] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1271), 3, + anon_sym_RBRACE, + anon_sym_case, + anon_sym_default, + [27662] = 4, + ACTIONS(608), 1, + anon_sym_RPAREN, + ACTIONS(1273), 1, + anon_sym_COMMA, + STATE(686), 1, + aux_sym_param_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27677] = 4, + ACTIONS(1275), 1, + sym_ident_pattern_token, + STATE(661), 1, + sym_diagnostic_name_token, + STATE(728), 1, + sym_diagnostic_rule_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27692] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(819), 3, + anon_sym_DOT, + anon_sym_RPAREN, + anon_sym_LBRACK, + [27703] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(851), 3, + anon_sym_DOT, + anon_sym_RPAREN, + anon_sym_LBRACK, + [27714] = 4, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(658), 1, + sym_ident, + STATE(752), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27729] = 4, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(658), 1, + sym_ident, + STATE(693), 1, + sym_optionally_typed_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27744] = 4, + ACTIONS(1277), 1, + anon_sym_COMMA, + ACTIONS(1280), 1, + anon_sym_RPAREN, + STATE(680), 1, + aux_sym_expression_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27759] = 4, + ACTIONS(1282), 1, + anon_sym_COMMA, + ACTIONS(1285), 1, + sym__template_args_end, + STATE(681), 1, + aux_sym_template_arg_comma_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27774] = 4, + ACTIONS(1247), 1, + anon_sym_SEMI, + ACTIONS(1287), 1, + anon_sym_COMMA, + STATE(639), 1, + aux_sym_enable_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27789] = 4, + ACTIONS(1210), 1, + sym_ident_pattern_token, + ACTIONS(1289), 1, + anon_sym_SEMI, + STATE(741), 1, + sym_software_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27804] = 2, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + ACTIONS(1291), 3, + anon_sym_RBRACE, + anon_sym_case, + anon_sym_default, + [27815] = 4, + ACTIONS(1289), 1, + anon_sym_SEMI, + ACTIONS(1293), 1, + anon_sym_COMMA, + STATE(654), 1, + aux_sym_software_extension_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27830] = 4, + ACTIONS(1295), 1, + anon_sym_COMMA, + ACTIONS(1298), 1, + anon_sym_RPAREN, + STATE(686), 1, + aux_sym_param_list_repeat1, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27845] = 2, + ACTIONS(1196), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27855] = 3, + ACTIONS(1300), 1, + anon_sym_SEMI, + ACTIONS(1302), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27867] = 2, + ACTIONS(1298), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27877] = 2, + ACTIONS(1304), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27887] = 2, + ACTIONS(1306), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27897] = 2, + ACTIONS(1285), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27907] = 2, + ACTIONS(1308), 2, + anon_sym_SEMI, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27917] = 2, + ACTIONS(1310), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27927] = 3, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(736), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27939] = 2, + ACTIONS(1280), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27949] = 3, + ACTIONS(1312), 1, + anon_sym_COMMA, + ACTIONS(1314), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27961] = 3, + ACTIONS(1316), 1, + anon_sym_COMMA, + ACTIONS(1318), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27973] = 2, + ACTIONS(1320), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27983] = 2, + ACTIONS(1322), 2, + anon_sym_SEMI, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [27993] = 3, + ACTIONS(1275), 1, + sym_ident_pattern_token, + STATE(704), 1, + sym_diagnostic_name_token, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28005] = 3, + ACTIONS(740), 1, + anon_sym_LPAREN, + STATE(328), 1, + sym_argument_expression_list, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28017] = 3, + ACTIONS(1324), 1, + anon_sym_SEMI, + ACTIONS(1326), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28029] = 2, + ACTIONS(1328), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28039] = 2, + ACTIONS(1330), 2, + anon_sym_SEMI, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28049] = 2, + ACTIONS(1332), 2, + anon_sym_SEMI, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28059] = 3, + ACTIONS(1334), 1, + anon_sym_SEMI, + ACTIONS(1336), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28071] = 2, + ACTIONS(1338), 2, + anon_sym_SEMI, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28081] = 3, + ACTIONS(1340), 1, + sym_ident_pattern_token, + STATE(731), 1, + sym_interpolate_type_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28093] = 3, + ACTIONS(1210), 1, + sym_ident_pattern_token, + STATE(741), 1, + sym_software_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28105] = 3, + ACTIONS(1206), 1, + sym_ident_pattern_token, + STATE(743), 1, + sym_enable_extension_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28117] = 2, + ACTIONS(1342), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28127] = 2, + ACTIONS(1344), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28137] = 2, + ACTIONS(1346), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28147] = 3, + ACTIONS(1348), 1, + sym_ident_pattern_token, + STATE(723), 1, + sym_builtin_value_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28159] = 3, + ACTIONS(1350), 1, + anon_sym_COMMA, + ACTIONS(1352), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28171] = 3, + ACTIONS(1354), 1, + anon_sym_SEMI, + ACTIONS(1356), 1, + anon_sym_if, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28183] = 3, + ACTIONS(1358), 1, + anon_sym_LPAREN, + STATE(883), 1, + sym_diagnostic_control, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28195] = 3, + ACTIONS(1360), 1, + anon_sym_COMMA, + ACTIONS(1362), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28207] = 3, + ACTIONS(1364), 1, + anon_sym_COMMA, + ACTIONS(1366), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28219] = 2, + ACTIONS(1368), 2, + anon_sym_SEMI, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28229] = 2, + ACTIONS(1370), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28239] = 3, + ACTIONS(1372), 1, + anon_sym_COMMA, + ACTIONS(1374), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28251] = 3, + ACTIONS(1376), 1, + anon_sym_COMMA, + ACTIONS(1378), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28263] = 3, + ACTIONS(1380), 1, + anon_sym_COMMA, + ACTIONS(1382), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28275] = 2, + ACTIONS(1384), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28285] = 3, + ACTIONS(1386), 1, + anon_sym_COMMA, + ACTIONS(1388), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28297] = 3, + ACTIONS(1390), 1, + anon_sym_COMMA, + ACTIONS(1392), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28309] = 2, + ACTIONS(1394), 2, + anon_sym_AT, + anon_sym_LBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28319] = 2, + ACTIONS(1396), 2, + anon_sym_SEMI, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28329] = 3, + ACTIONS(1398), 1, + anon_sym_COMMA, + ACTIONS(1400), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28341] = 2, + ACTIONS(1402), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28351] = 2, + ACTIONS(1404), 2, + anon_sym_SEMI, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28361] = 2, + ACTIONS(1406), 2, + anon_sym_SEMI, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28371] = 3, + ACTIONS(1408), 1, + anon_sym_SEMI, + ACTIONS(1410), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28383] = 3, + ACTIONS(1412), 1, + anon_sym_LBRACE, + STATE(582), 1, + sym_struct_body_decl, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28395] = 3, + ACTIONS(1414), 1, + anon_sym_COMMA, + ACTIONS(1416), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28407] = 3, + ACTIONS(1358), 1, + anon_sym_LPAREN, + STATE(512), 1, + sym_diagnostic_control, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28419] = 3, + ACTIONS(1418), 1, + sym_ident_pattern_token, + STATE(830), 1, + sym_severity_control_name, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28431] = 3, + ACTIONS(1420), 1, + anon_sym_SEMI, + ACTIONS(1422), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28443] = 2, + ACTIONS(1214), 2, + anon_sym_SEMI, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28453] = 3, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(858), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28465] = 2, + ACTIONS(1188), 2, + anon_sym_SEMI, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28475] = 2, + ACTIONS(1131), 2, + sym__template_args_end, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28485] = 3, + ACTIONS(1424), 1, + anon_sym_COMMA, + ACTIONS(1426), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28497] = 3, + ACTIONS(1428), 1, + anon_sym_COMMA, + ACTIONS(1430), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28509] = 3, + ACTIONS(552), 1, + sym_ident_pattern_token, + STATE(867), 1, + sym_ident, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28521] = 2, + ACTIONS(1432), 2, + anon_sym_SEMI, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28531] = 2, + ACTIONS(1434), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28540] = 2, + ACTIONS(1436), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28549] = 2, + ACTIONS(1438), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28558] = 2, + ACTIONS(1440), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28567] = 2, + ACTIONS(1442), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28576] = 2, + ACTIONS(1444), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28585] = 2, + ACTIONS(1446), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28594] = 2, + ACTIONS(1448), 1, + anon_sym_COLON, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28603] = 2, + ACTIONS(1450), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28612] = 2, + ACTIONS(1452), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28621] = 2, + ACTIONS(1454), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28630] = 2, + ACTIONS(1456), 1, + anon_sym_COLON, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28639] = 2, + ACTIONS(1458), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28648] = 2, + ACTIONS(1460), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28657] = 2, + ACTIONS(1462), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28666] = 2, + ACTIONS(1464), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28675] = 2, + ACTIONS(1466), 1, + anon_sym_AMP_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28684] = 2, + ACTIONS(1468), 1, + anon_sym_PIPE_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28693] = 2, + ACTIONS(1470), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28702] = 2, + ACTIONS(694), 1, + anon_sym_if, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28711] = 2, + ACTIONS(1472), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28720] = 2, + ACTIONS(1474), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28729] = 2, + ACTIONS(1476), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28738] = 2, + ACTIONS(1478), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28747] = 2, + ACTIONS(1480), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28756] = 2, + ACTIONS(1482), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28765] = 2, + ACTIONS(1484), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28774] = 2, + ACTIONS(1486), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28783] = 2, + ACTIONS(1488), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28792] = 2, + ACTIONS(1490), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28801] = 2, + ACTIONS(1492), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28810] = 2, + ACTIONS(1494), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28819] = 2, + ACTIONS(1496), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28828] = 2, + ACTIONS(1498), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28837] = 2, + ACTIONS(1500), 1, + anon_sym_COLON, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28846] = 2, + ACTIONS(1502), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28855] = 2, + ACTIONS(1504), 1, + anon_sym_COLON, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28864] = 2, + ACTIONS(71), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28873] = 2, + ACTIONS(1506), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28882] = 2, + ACTIONS(1508), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28891] = 2, + ACTIONS(1510), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28900] = 2, + ACTIONS(1512), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28909] = 2, + ACTIONS(1514), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28918] = 2, + ACTIONS(1516), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28927] = 2, + ACTIONS(1518), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28936] = 2, + ACTIONS(1520), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28945] = 2, + ACTIONS(1522), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28954] = 2, + ACTIONS(1524), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28963] = 2, + ACTIONS(1354), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28972] = 2, + ACTIONS(1526), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28981] = 2, + ACTIONS(1528), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28990] = 2, + ACTIONS(1530), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [28999] = 2, + ACTIONS(1532), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29008] = 2, + ACTIONS(1534), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29017] = 2, + ACTIONS(857), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29026] = 2, + ACTIONS(1536), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29035] = 2, + ACTIONS(1538), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29044] = 2, + ACTIONS(1540), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29053] = 2, + ACTIONS(1542), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29062] = 2, + ACTIONS(1544), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29071] = 2, + ACTIONS(1546), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29080] = 2, + ACTIONS(1548), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29089] = 2, + ACTIONS(1550), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29098] = 2, + ACTIONS(1552), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29107] = 2, + ACTIONS(1554), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29116] = 2, + ACTIONS(1556), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29125] = 2, + ACTIONS(73), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29134] = 2, + ACTIONS(1558), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29143] = 2, + ACTIONS(217), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29152] = 2, + ACTIONS(1560), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29161] = 2, + ACTIONS(1562), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29170] = 2, + ACTIONS(1564), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29179] = 2, + ACTIONS(1566), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29188] = 2, + ACTIONS(1568), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29197] = 2, + ACTIONS(1570), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29206] = 2, + ACTIONS(1572), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29215] = 2, + ACTIONS(1574), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29224] = 2, + ACTIONS(1576), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29233] = 2, + ACTIONS(1578), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29242] = 2, + ACTIONS(1580), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29251] = 2, + ACTIONS(1582), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29260] = 2, + ACTIONS(1584), 1, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29269] = 2, + ACTIONS(1586), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29278] = 2, + ACTIONS(1588), 1, + anon_sym_COMMA, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29287] = 2, + ACTIONS(1590), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29296] = 2, + ACTIONS(1592), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29305] = 2, + ACTIONS(1594), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29314] = 2, + ACTIONS(1596), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29323] = 2, + ACTIONS(1598), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29332] = 2, + ACTIONS(1600), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29341] = 2, + ACTIONS(139), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29350] = 2, + ACTIONS(1602), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29359] = 2, + ACTIONS(1604), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29368] = 2, + ACTIONS(1606), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29377] = 2, + ACTIONS(1608), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29386] = 2, + ACTIONS(41), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29395] = 2, + ACTIONS(1610), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29404] = 2, + ACTIONS(1612), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29413] = 2, + ACTIONS(1614), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29422] = 2, + ACTIONS(1616), 1, + sym__template_args_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29431] = 2, + ACTIONS(1618), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29440] = 2, + ACTIONS(823), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29449] = 2, + ACTIONS(1620), 1, + anon_sym_RBRACK, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29458] = 2, + ACTIONS(1622), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29467] = 2, + ACTIONS(1624), 1, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29476] = 2, + ACTIONS(1626), 1, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29485] = 2, + ACTIONS(1628), 1, + anon_sym_CARET, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29494] = 2, + ACTIONS(1630), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29503] = 2, + ACTIONS(1632), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29512] = 2, + ACTIONS(1634), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29521] = 2, + ACTIONS(1636), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29530] = 2, + ACTIONS(1638), 1, + anon_sym_CARET, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29539] = 2, + ACTIONS(1640), 1, + anon_sym_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29548] = 2, + ACTIONS(1642), 1, + anon_sym_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29557] = 2, + ACTIONS(1644), 1, + anon_sym_PIPE_PIPE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29566] = 2, + ACTIONS(1646), 1, + anon_sym_AMP_AMP, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29575] = 2, + ACTIONS(1648), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29584] = 2, + ACTIONS(1650), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29593] = 2, + ACTIONS(1652), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29602] = 2, + ACTIONS(137), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29611] = 2, + ACTIONS(1410), 1, + anon_sym_EQ, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29620] = 2, + ACTIONS(821), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29629] = 2, + ACTIONS(1654), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29638] = 2, + ACTIONS(1656), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29647] = 2, + ACTIONS(1658), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29656] = 2, + ACTIONS(1660), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29665] = 2, + ACTIONS(1662), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29674] = 2, + ACTIONS(1664), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29683] = 2, + ACTIONS(1666), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29692] = 2, + ACTIONS(1668), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29701] = 2, + ACTIONS(1670), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29710] = 2, + ACTIONS(1672), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29719] = 2, + ACTIONS(1674), 1, + anon_sym_LPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29728] = 2, + ACTIONS(1676), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29737] = 2, + ACTIONS(1678), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29746] = 2, + ACTIONS(1680), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29755] = 2, + ACTIONS(1682), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29764] = 2, + ACTIONS(1684), 1, + anon_sym_SEMI, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29773] = 2, + ACTIONS(1686), 1, + ts_builtin_sym_end, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29782] = 2, + ACTIONS(1688), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29791] = 2, + ACTIONS(1690), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29800] = 2, + ACTIONS(1692), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29809] = 2, + ACTIONS(1694), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29818] = 2, + ACTIONS(1696), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29827] = 2, + ACTIONS(1698), 1, + anon_sym_RBRACE, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29836] = 2, + ACTIONS(1182), 1, + sym__disambiguate_template, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, + [29845] = 2, + ACTIONS(877), 1, + anon_sym_RPAREN, + ACTIONS(3), 3, + sym__block_comment, + sym__comment, + sym__blankspace, +}; + +static const uint32_t ts_small_parse_table_map[] = { + [SMALL_STATE(17)] = 0, + [SMALL_STATE(18)] = 125, + [SMALL_STATE(19)] = 250, + [SMALL_STATE(20)] = 373, + [SMALL_STATE(21)] = 493, + [SMALL_STATE(22)] = 613, + [SMALL_STATE(23)] = 733, + [SMALL_STATE(24)] = 853, + [SMALL_STATE(25)] = 973, + [SMALL_STATE(26)] = 1093, + [SMALL_STATE(27)] = 1213, + [SMALL_STATE(28)] = 1333, + [SMALL_STATE(29)] = 1453, + [SMALL_STATE(30)] = 1573, + [SMALL_STATE(31)] = 1693, + [SMALL_STATE(32)] = 1813, + [SMALL_STATE(33)] = 1933, + [SMALL_STATE(34)] = 2053, + [SMALL_STATE(35)] = 2173, + [SMALL_STATE(36)] = 2293, + [SMALL_STATE(37)] = 2413, + [SMALL_STATE(38)] = 2533, + [SMALL_STATE(39)] = 2653, + [SMALL_STATE(40)] = 2773, + [SMALL_STATE(41)] = 2893, + [SMALL_STATE(42)] = 3013, + [SMALL_STATE(43)] = 3133, + [SMALL_STATE(44)] = 3250, + [SMALL_STATE(45)] = 3367, + [SMALL_STATE(46)] = 3484, + [SMALL_STATE(47)] = 3601, + [SMALL_STATE(48)] = 3718, + [SMALL_STATE(49)] = 3835, + [SMALL_STATE(50)] = 3952, + [SMALL_STATE(51)] = 4069, + [SMALL_STATE(52)] = 4183, + [SMALL_STATE(53)] = 4297, + [SMALL_STATE(54)] = 4411, + [SMALL_STATE(55)] = 4525, + [SMALL_STATE(56)] = 4619, + [SMALL_STATE(57)] = 4733, + [SMALL_STATE(58)] = 4847, + [SMALL_STATE(59)] = 4961, + [SMALL_STATE(60)] = 5075, + [SMALL_STATE(61)] = 5189, + [SMALL_STATE(62)] = 5303, + [SMALL_STATE(63)] = 5417, + [SMALL_STATE(64)] = 5531, + [SMALL_STATE(65)] = 5645, + [SMALL_STATE(66)] = 5759, + [SMALL_STATE(67)] = 5873, + [SMALL_STATE(68)] = 5987, + [SMALL_STATE(69)] = 6101, + [SMALL_STATE(70)] = 6215, + [SMALL_STATE(71)] = 6329, + [SMALL_STATE(72)] = 6443, + [SMALL_STATE(73)] = 6557, + [SMALL_STATE(74)] = 6671, + [SMALL_STATE(75)] = 6785, + [SMALL_STATE(76)] = 6899, + [SMALL_STATE(77)] = 7013, + [SMALL_STATE(78)] = 7127, + [SMALL_STATE(79)] = 7241, + [SMALL_STATE(80)] = 7355, + [SMALL_STATE(81)] = 7469, + [SMALL_STATE(82)] = 7583, + [SMALL_STATE(83)] = 7697, + [SMALL_STATE(84)] = 7811, + [SMALL_STATE(85)] = 7925, + [SMALL_STATE(86)] = 8039, + [SMALL_STATE(87)] = 8153, + [SMALL_STATE(88)] = 8267, + [SMALL_STATE(89)] = 8381, + [SMALL_STATE(90)] = 8495, + [SMALL_STATE(91)] = 8609, + [SMALL_STATE(92)] = 8723, + [SMALL_STATE(93)] = 8837, + [SMALL_STATE(94)] = 8951, + [SMALL_STATE(95)] = 9065, + [SMALL_STATE(96)] = 9179, + [SMALL_STATE(97)] = 9293, + [SMALL_STATE(98)] = 9386, + [SMALL_STATE(99)] = 9479, + [SMALL_STATE(100)] = 9572, + [SMALL_STATE(101)] = 9665, + [SMALL_STATE(102)] = 9741, + [SMALL_STATE(103)] = 9817, + [SMALL_STATE(104)] = 9907, + [SMALL_STATE(105)] = 9997, + [SMALL_STATE(106)] = 10073, + [SMALL_STATE(107)] = 10163, + [SMALL_STATE(108)] = 10253, + [SMALL_STATE(109)] = 10337, + [SMALL_STATE(110)] = 10421, + [SMALL_STATE(111)] = 10505, + [SMALL_STATE(112)] = 10589, + [SMALL_STATE(113)] = 10673, + [SMALL_STATE(114)] = 10757, + [SMALL_STATE(115)] = 10838, + [SMALL_STATE(116)] = 10919, + [SMALL_STATE(117)] = 11000, + [SMALL_STATE(118)] = 11081, + [SMALL_STATE(119)] = 11162, + [SMALL_STATE(120)] = 11243, + [SMALL_STATE(121)] = 11324, + [SMALL_STATE(122)] = 11405, + [SMALL_STATE(123)] = 11486, + [SMALL_STATE(124)] = 11567, + [SMALL_STATE(125)] = 11648, + [SMALL_STATE(126)] = 11729, + [SMALL_STATE(127)] = 11810, + [SMALL_STATE(128)] = 11891, + [SMALL_STATE(129)] = 11972, + [SMALL_STATE(130)] = 12053, + [SMALL_STATE(131)] = 12134, + [SMALL_STATE(132)] = 12215, + [SMALL_STATE(133)] = 12296, + [SMALL_STATE(134)] = 12377, + [SMALL_STATE(135)] = 12458, + [SMALL_STATE(136)] = 12539, + [SMALL_STATE(137)] = 12620, + [SMALL_STATE(138)] = 12701, + [SMALL_STATE(139)] = 12782, + [SMALL_STATE(140)] = 12863, + [SMALL_STATE(141)] = 12944, + [SMALL_STATE(142)] = 13025, + [SMALL_STATE(143)] = 13066, + [SMALL_STATE(144)] = 13107, + [SMALL_STATE(145)] = 13148, + [SMALL_STATE(146)] = 13192, + [SMALL_STATE(147)] = 13238, + [SMALL_STATE(148)] = 13281, + [SMALL_STATE(149)] = 13319, + [SMALL_STATE(150)] = 13363, + [SMALL_STATE(151)] = 13401, + [SMALL_STATE(152)] = 13445, + [SMALL_STATE(153)] = 13489, + [SMALL_STATE(154)] = 13526, + [SMALL_STATE(155)] = 13563, + [SMALL_STATE(156)] = 13600, + [SMALL_STATE(157)] = 13637, + [SMALL_STATE(158)] = 13674, + [SMALL_STATE(159)] = 13711, + [SMALL_STATE(160)] = 13748, + [SMALL_STATE(161)] = 13785, + [SMALL_STATE(162)] = 13822, + [SMALL_STATE(163)] = 13859, + [SMALL_STATE(164)] = 13896, + [SMALL_STATE(165)] = 13933, + [SMALL_STATE(166)] = 13970, + [SMALL_STATE(167)] = 14007, + [SMALL_STATE(168)] = 14050, + [SMALL_STATE(169)] = 14103, + [SMALL_STATE(170)] = 14140, + [SMALL_STATE(171)] = 14183, + [SMALL_STATE(172)] = 14226, + [SMALL_STATE(173)] = 14269, + [SMALL_STATE(174)] = 14306, + [SMALL_STATE(175)] = 14343, + [SMALL_STATE(176)] = 14383, + [SMALL_STATE(177)] = 14430, + [SMALL_STATE(178)] = 14477, + [SMALL_STATE(179)] = 14516, + [SMALL_STATE(180)] = 14559, + [SMALL_STATE(181)] = 14594, + [SMALL_STATE(182)] = 14629, + [SMALL_STATE(183)] = 14664, + [SMALL_STATE(184)] = 14699, + [SMALL_STATE(185)] = 14734, + [SMALL_STATE(186)] = 14773, + [SMALL_STATE(187)] = 14817, + [SMALL_STATE(188)] = 14851, + [SMALL_STATE(189)] = 14889, + [SMALL_STATE(190)] = 14927, + [SMALL_STATE(191)] = 14971, + [SMALL_STATE(192)] = 15005, + [SMALL_STATE(193)] = 15049, + [SMALL_STATE(194)] = 15093, + [SMALL_STATE(195)] = 15126, + [SMALL_STATE(196)] = 15165, + [SMALL_STATE(197)] = 15206, + [SMALL_STATE(198)] = 15239, + [SMALL_STATE(199)] = 15272, + [SMALL_STATE(200)] = 15305, + [SMALL_STATE(201)] = 15342, + [SMALL_STATE(202)] = 15375, + [SMALL_STATE(203)] = 15416, + [SMALL_STATE(204)] = 15449, + [SMALL_STATE(205)] = 15490, + [SMALL_STATE(206)] = 15531, + [SMALL_STATE(207)] = 15572, + [SMALL_STATE(208)] = 15611, + [SMALL_STATE(209)] = 15652, + [SMALL_STATE(210)] = 15685, + [SMALL_STATE(211)] = 15718, + [SMALL_STATE(212)] = 15751, + [SMALL_STATE(213)] = 15784, + [SMALL_STATE(214)] = 15823, + [SMALL_STATE(215)] = 15864, + [SMALL_STATE(216)] = 15903, + [SMALL_STATE(217)] = 15936, + [SMALL_STATE(218)] = 15969, + [SMALL_STATE(219)] = 16002, + [SMALL_STATE(220)] = 16035, + [SMALL_STATE(221)] = 16068, + [SMALL_STATE(222)] = 16101, + [SMALL_STATE(223)] = 16142, + [SMALL_STATE(224)] = 16175, + [SMALL_STATE(225)] = 16214, + [SMALL_STATE(226)] = 16277, + [SMALL_STATE(227)] = 16318, + [SMALL_STATE(228)] = 16351, + [SMALL_STATE(229)] = 16390, + [SMALL_STATE(230)] = 16423, + [SMALL_STATE(231)] = 16456, + [SMALL_STATE(232)] = 16489, + [SMALL_STATE(233)] = 16530, + [SMALL_STATE(234)] = 16563, + [SMALL_STATE(235)] = 16596, + [SMALL_STATE(236)] = 16659, + [SMALL_STATE(237)] = 16691, + [SMALL_STATE(238)] = 16723, + [SMALL_STATE(239)] = 16761, + [SMALL_STATE(240)] = 16799, + [SMALL_STATE(241)] = 16833, + [SMALL_STATE(242)] = 16871, + [SMALL_STATE(243)] = 16903, + [SMALL_STATE(244)] = 16935, + [SMALL_STATE(245)] = 16967, + [SMALL_STATE(246)] = 16999, + [SMALL_STATE(247)] = 17037, + [SMALL_STATE(248)] = 17069, + [SMALL_STATE(249)] = 17107, + [SMALL_STATE(250)] = 17139, + [SMALL_STATE(251)] = 17171, + [SMALL_STATE(252)] = 17203, + [SMALL_STATE(253)] = 17235, + [SMALL_STATE(254)] = 17273, + [SMALL_STATE(255)] = 17311, + [SMALL_STATE(256)] = 17349, + [SMALL_STATE(257)] = 17387, + [SMALL_STATE(258)] = 17419, + [SMALL_STATE(259)] = 17451, + [SMALL_STATE(260)] = 17489, + [SMALL_STATE(261)] = 17521, + [SMALL_STATE(262)] = 17559, + [SMALL_STATE(263)] = 17591, + [SMALL_STATE(264)] = 17623, + [SMALL_STATE(265)] = 17661, + [SMALL_STATE(266)] = 17693, + [SMALL_STATE(267)] = 17725, + [SMALL_STATE(268)] = 17757, + [SMALL_STATE(269)] = 17789, + [SMALL_STATE(270)] = 17821, + [SMALL_STATE(271)] = 17853, + [SMALL_STATE(272)] = 17885, + [SMALL_STATE(273)] = 17917, + [SMALL_STATE(274)] = 17949, + [SMALL_STATE(275)] = 17981, + [SMALL_STATE(276)] = 18019, + [SMALL_STATE(277)] = 18051, + [SMALL_STATE(278)] = 18089, + [SMALL_STATE(279)] = 18121, + [SMALL_STATE(280)] = 18153, + [SMALL_STATE(281)] = 18185, + [SMALL_STATE(282)] = 18223, + [SMALL_STATE(283)] = 18255, + [SMALL_STATE(284)] = 18290, + [SMALL_STATE(285)] = 18325, + [SMALL_STATE(286)] = 18360, + [SMALL_STATE(287)] = 18395, + [SMALL_STATE(288)] = 18430, + [SMALL_STATE(289)] = 18465, + [SMALL_STATE(290)] = 18500, + [SMALL_STATE(291)] = 18535, + [SMALL_STATE(292)] = 18570, + [SMALL_STATE(293)] = 18605, + [SMALL_STATE(294)] = 18636, + [SMALL_STATE(295)] = 18666, + [SMALL_STATE(296)] = 18700, + [SMALL_STATE(297)] = 18730, + [SMALL_STATE(298)] = 18764, + [SMALL_STATE(299)] = 18794, + [SMALL_STATE(300)] = 18824, + [SMALL_STATE(301)] = 18854, + [SMALL_STATE(302)] = 18884, + [SMALL_STATE(303)] = 18918, + [SMALL_STATE(304)] = 18948, + [SMALL_STATE(305)] = 18978, + [SMALL_STATE(306)] = 19008, + [SMALL_STATE(307)] = 19038, + [SMALL_STATE(308)] = 19068, + [SMALL_STATE(309)] = 19098, + [SMALL_STATE(310)] = 19128, + [SMALL_STATE(311)] = 19166, + [SMALL_STATE(312)] = 19196, + [SMALL_STATE(313)] = 19226, + [SMALL_STATE(314)] = 19255, + [SMALL_STATE(315)] = 19290, + [SMALL_STATE(316)] = 19325, + [SMALL_STATE(317)] = 19354, + [SMALL_STATE(318)] = 19389, + [SMALL_STATE(319)] = 19424, + [SMALL_STATE(320)] = 19457, + [SMALL_STATE(321)] = 19492, + [SMALL_STATE(322)] = 19525, + [SMALL_STATE(323)] = 19560, + [SMALL_STATE(324)] = 19588, + [SMALL_STATE(325)] = 19616, + [SMALL_STATE(326)] = 19644, + [SMALL_STATE(327)] = 19672, + [SMALL_STATE(328)] = 19710, + [SMALL_STATE(329)] = 19738, + [SMALL_STATE(330)] = 19766, + [SMALL_STATE(331)] = 19826, + [SMALL_STATE(332)] = 19854, + [SMALL_STATE(333)] = 19882, + [SMALL_STATE(334)] = 19914, + [SMALL_STATE(335)] = 19948, + [SMALL_STATE(336)] = 19978, + [SMALL_STATE(337)] = 20006, + [SMALL_STATE(338)] = 20034, + [SMALL_STATE(339)] = 20062, + [SMALL_STATE(340)] = 20090, + [SMALL_STATE(341)] = 20118, + [SMALL_STATE(342)] = 20150, + [SMALL_STATE(343)] = 20178, + [SMALL_STATE(344)] = 20206, + [SMALL_STATE(345)] = 20234, + [SMALL_STATE(346)] = 20262, + [SMALL_STATE(347)] = 20290, + [SMALL_STATE(348)] = 20318, + [SMALL_STATE(349)] = 20346, + [SMALL_STATE(350)] = 20374, + [SMALL_STATE(351)] = 20402, + [SMALL_STATE(352)] = 20430, + [SMALL_STATE(353)] = 20458, + [SMALL_STATE(354)] = 20486, + [SMALL_STATE(355)] = 20514, + [SMALL_STATE(356)] = 20542, + [SMALL_STATE(357)] = 20576, + [SMALL_STATE(358)] = 20604, + [SMALL_STATE(359)] = 20632, + [SMALL_STATE(360)] = 20660, + [SMALL_STATE(361)] = 20694, + [SMALL_STATE(362)] = 20721, + [SMALL_STATE(363)] = 20748, + [SMALL_STATE(364)] = 20797, + [SMALL_STATE(365)] = 20824, + [SMALL_STATE(366)] = 20851, + [SMALL_STATE(367)] = 20878, + [SMALL_STATE(368)] = 20905, + [SMALL_STATE(369)] = 20954, + [SMALL_STATE(370)] = 20983, + [SMALL_STATE(371)] = 21010, + [SMALL_STATE(372)] = 21037, + [SMALL_STATE(373)] = 21064, + [SMALL_STATE(374)] = 21097, + [SMALL_STATE(375)] = 21124, + [SMALL_STATE(376)] = 21151, + [SMALL_STATE(377)] = 21178, + [SMALL_STATE(378)] = 21205, + [SMALL_STATE(379)] = 21232, + [SMALL_STATE(380)] = 21265, + [SMALL_STATE(381)] = 21292, + [SMALL_STATE(382)] = 21325, + [SMALL_STATE(383)] = 21352, + [SMALL_STATE(384)] = 21401, + [SMALL_STATE(385)] = 21428, + [SMALL_STATE(386)] = 21454, + [SMALL_STATE(387)] = 21480, + [SMALL_STATE(388)] = 21506, + [SMALL_STATE(389)] = 21536, + [SMALL_STATE(390)] = 21566, + [SMALL_STATE(391)] = 21592, + [SMALL_STATE(392)] = 21618, + [SMALL_STATE(393)] = 21648, + [SMALL_STATE(394)] = 21674, + [SMALL_STATE(395)] = 21700, + [SMALL_STATE(396)] = 21726, + [SMALL_STATE(397)] = 21752, + [SMALL_STATE(398)] = 21782, + [SMALL_STATE(399)] = 21808, + [SMALL_STATE(400)] = 21834, + [SMALL_STATE(401)] = 21860, + [SMALL_STATE(402)] = 21886, + [SMALL_STATE(403)] = 21912, + [SMALL_STATE(404)] = 21938, + [SMALL_STATE(405)] = 21964, + [SMALL_STATE(406)] = 21994, + [SMALL_STATE(407)] = 22024, + [SMALL_STATE(408)] = 22050, + [SMALL_STATE(409)] = 22076, + [SMALL_STATE(410)] = 22102, + [SMALL_STATE(411)] = 22128, + [SMALL_STATE(412)] = 22154, + [SMALL_STATE(413)] = 22180, + [SMALL_STATE(414)] = 22208, + [SMALL_STATE(415)] = 22234, + [SMALL_STATE(416)] = 22260, + [SMALL_STATE(417)] = 22286, + [SMALL_STATE(418)] = 22316, + [SMALL_STATE(419)] = 22339, + [SMALL_STATE(420)] = 22364, + [SMALL_STATE(421)] = 22389, + [SMALL_STATE(422)] = 22418, + [SMALL_STATE(423)] = 22443, + [SMALL_STATE(424)] = 22468, + [SMALL_STATE(425)] = 22493, + [SMALL_STATE(426)] = 22522, + [SMALL_STATE(427)] = 22551, + [SMALL_STATE(428)] = 22574, + [SMALL_STATE(429)] = 22601, + [SMALL_STATE(430)] = 22626, + [SMALL_STATE(431)] = 22649, + [SMALL_STATE(432)] = 22674, + [SMALL_STATE(433)] = 22697, + [SMALL_STATE(434)] = 22720, + [SMALL_STATE(435)] = 22745, + [SMALL_STATE(436)] = 22774, + [SMALL_STATE(437)] = 22798, + [SMALL_STATE(438)] = 22828, + [SMALL_STATE(439)] = 22852, + [SMALL_STATE(440)] = 22876, + [SMALL_STATE(441)] = 22906, + [SMALL_STATE(442)] = 22930, + [SMALL_STATE(443)] = 22960, + [SMALL_STATE(444)] = 22984, + [SMALL_STATE(445)] = 23014, + [SMALL_STATE(446)] = 23038, + [SMALL_STATE(447)] = 23062, + [SMALL_STATE(448)] = 23090, + [SMALL_STATE(449)] = 23114, + [SMALL_STATE(450)] = 23142, + [SMALL_STATE(451)] = 23170, + [SMALL_STATE(452)] = 23200, + [SMALL_STATE(453)] = 23230, + [SMALL_STATE(454)] = 23254, + [SMALL_STATE(455)] = 23278, + [SMALL_STATE(456)] = 23302, + [SMALL_STATE(457)] = 23326, + [SMALL_STATE(458)] = 23356, + [SMALL_STATE(459)] = 23379, + [SMALL_STATE(460)] = 23404, + [SMALL_STATE(461)] = 23427, + [SMALL_STATE(462)] = 23450, + [SMALL_STATE(463)] = 23471, + [SMALL_STATE(464)] = 23494, + [SMALL_STATE(465)] = 23517, + [SMALL_STATE(466)] = 23540, + [SMALL_STATE(467)] = 23567, + [SMALL_STATE(468)] = 23590, + [SMALL_STATE(469)] = 23613, + [SMALL_STATE(470)] = 23636, + [SMALL_STATE(471)] = 23659, + [SMALL_STATE(472)] = 23682, + [SMALL_STATE(473)] = 23705, + [SMALL_STATE(474)] = 23728, + [SMALL_STATE(475)] = 23751, + [SMALL_STATE(476)] = 23774, + [SMALL_STATE(477)] = 23797, + [SMALL_STATE(478)] = 23820, + [SMALL_STATE(479)] = 23843, + [SMALL_STATE(480)] = 23870, + [SMALL_STATE(481)] = 23893, + [SMALL_STATE(482)] = 23916, + [SMALL_STATE(483)] = 23939, + [SMALL_STATE(484)] = 23960, + [SMALL_STATE(485)] = 23983, + [SMALL_STATE(486)] = 24006, + [SMALL_STATE(487)] = 24029, + [SMALL_STATE(488)] = 24052, + [SMALL_STATE(489)] = 24075, + [SMALL_STATE(490)] = 24098, + [SMALL_STATE(491)] = 24121, + [SMALL_STATE(492)] = 24144, + [SMALL_STATE(493)] = 24165, + [SMALL_STATE(494)] = 24188, + [SMALL_STATE(495)] = 24211, + [SMALL_STATE(496)] = 24234, + [SMALL_STATE(497)] = 24257, + [SMALL_STATE(498)] = 24280, + [SMALL_STATE(499)] = 24302, + [SMALL_STATE(500)] = 24324, + [SMALL_STATE(501)] = 24352, + [SMALL_STATE(502)] = 24374, + [SMALL_STATE(503)] = 24396, + [SMALL_STATE(504)] = 24420, + [SMALL_STATE(505)] = 24448, + [SMALL_STATE(506)] = 24476, + [SMALL_STATE(507)] = 24497, + [SMALL_STATE(508)] = 24518, + [SMALL_STATE(509)] = 24541, + [SMALL_STATE(510)] = 24564, + [SMALL_STATE(511)] = 24585, + [SMALL_STATE(512)] = 24606, + [SMALL_STATE(513)] = 24627, + [SMALL_STATE(514)] = 24648, + [SMALL_STATE(515)] = 24669, + [SMALL_STATE(516)] = 24690, + [SMALL_STATE(517)] = 24713, + [SMALL_STATE(518)] = 24736, + [SMALL_STATE(519)] = 24759, + [SMALL_STATE(520)] = 24782, + [SMALL_STATE(521)] = 24803, + [SMALL_STATE(522)] = 24824, + [SMALL_STATE(523)] = 24847, + [SMALL_STATE(524)] = 24868, + [SMALL_STATE(525)] = 24889, + [SMALL_STATE(526)] = 24910, + [SMALL_STATE(527)] = 24931, + [SMALL_STATE(528)] = 24952, + [SMALL_STATE(529)] = 24973, + [SMALL_STATE(530)] = 24994, + [SMALL_STATE(531)] = 25015, + [SMALL_STATE(532)] = 25036, + [SMALL_STATE(533)] = 25057, + [SMALL_STATE(534)] = 25078, + [SMALL_STATE(535)] = 25099, + [SMALL_STATE(536)] = 25120, + [SMALL_STATE(537)] = 25141, + [SMALL_STATE(538)] = 25162, + [SMALL_STATE(539)] = 25183, + [SMALL_STATE(540)] = 25204, + [SMALL_STATE(541)] = 25225, + [SMALL_STATE(542)] = 25246, + [SMALL_STATE(543)] = 25267, + [SMALL_STATE(544)] = 25288, + [SMALL_STATE(545)] = 25309, + [SMALL_STATE(546)] = 25330, + [SMALL_STATE(547)] = 25351, + [SMALL_STATE(548)] = 25374, + [SMALL_STATE(549)] = 25395, + [SMALL_STATE(550)] = 25416, + [SMALL_STATE(551)] = 25439, + [SMALL_STATE(552)] = 25462, + [SMALL_STATE(553)] = 25483, + [SMALL_STATE(554)] = 25506, + [SMALL_STATE(555)] = 25527, + [SMALL_STATE(556)] = 25548, + [SMALL_STATE(557)] = 25569, + [SMALL_STATE(558)] = 25590, + [SMALL_STATE(559)] = 25611, + [SMALL_STATE(560)] = 25632, + [SMALL_STATE(561)] = 25655, + [SMALL_STATE(562)] = 25676, + [SMALL_STATE(563)] = 25697, + [SMALL_STATE(564)] = 25718, + [SMALL_STATE(565)] = 25739, + [SMALL_STATE(566)] = 25762, + [SMALL_STATE(567)] = 25783, + [SMALL_STATE(568)] = 25804, + [SMALL_STATE(569)] = 25825, + [SMALL_STATE(570)] = 25846, + [SMALL_STATE(571)] = 25867, + [SMALL_STATE(572)] = 25888, + [SMALL_STATE(573)] = 25909, + [SMALL_STATE(574)] = 25930, + [SMALL_STATE(575)] = 25951, + [SMALL_STATE(576)] = 25972, + [SMALL_STATE(577)] = 25993, + [SMALL_STATE(578)] = 26014, + [SMALL_STATE(579)] = 26035, + [SMALL_STATE(580)] = 26055, + [SMALL_STATE(581)] = 26073, + [SMALL_STATE(582)] = 26097, + [SMALL_STATE(583)] = 26117, + [SMALL_STATE(584)] = 26137, + [SMALL_STATE(585)] = 26157, + [SMALL_STATE(586)] = 26177, + [SMALL_STATE(587)] = 26197, + [SMALL_STATE(588)] = 26219, + [SMALL_STATE(589)] = 26239, + [SMALL_STATE(590)] = 26263, + [SMALL_STATE(591)] = 26283, + [SMALL_STATE(592)] = 26302, + [SMALL_STATE(593)] = 26321, + [SMALL_STATE(594)] = 26344, + [SMALL_STATE(595)] = 26363, + [SMALL_STATE(596)] = 26382, + [SMALL_STATE(597)] = 26401, + [SMALL_STATE(598)] = 26418, + [SMALL_STATE(599)] = 26437, + [SMALL_STATE(600)] = 26458, + [SMALL_STATE(601)] = 26481, + [SMALL_STATE(602)] = 26500, + [SMALL_STATE(603)] = 26519, + [SMALL_STATE(604)] = 26536, + [SMALL_STATE(605)] = 26554, + [SMALL_STATE(606)] = 26572, + [SMALL_STATE(607)] = 26590, + [SMALL_STATE(608)] = 26608, + [SMALL_STATE(609)] = 26626, + [SMALL_STATE(610)] = 26651, + [SMALL_STATE(611)] = 26676, + [SMALL_STATE(612)] = 26701, + [SMALL_STATE(613)] = 26720, + [SMALL_STATE(614)] = 26743, + [SMALL_STATE(615)] = 26766, + [SMALL_STATE(616)] = 26781, + [SMALL_STATE(617)] = 26806, + [SMALL_STATE(618)] = 26829, + [SMALL_STATE(619)] = 26847, + [SMALL_STATE(620)] = 26867, + [SMALL_STATE(621)] = 26887, + [SMALL_STATE(622)] = 26904, + [SMALL_STATE(623)] = 26925, + [SMALL_STATE(624)] = 26942, + [SMALL_STATE(625)] = 26959, + [SMALL_STATE(626)] = 26972, + [SMALL_STATE(627)] = 26985, + [SMALL_STATE(628)] = 26997, + [SMALL_STATE(629)] = 27013, + [SMALL_STATE(630)] = 27031, + [SMALL_STATE(631)] = 27049, + [SMALL_STATE(632)] = 27067, + [SMALL_STATE(633)] = 27079, + [SMALL_STATE(634)] = 27091, + [SMALL_STATE(635)] = 27109, + [SMALL_STATE(636)] = 27121, + [SMALL_STATE(637)] = 27139, + [SMALL_STATE(638)] = 27157, + [SMALL_STATE(639)] = 27175, + [SMALL_STATE(640)] = 27190, + [SMALL_STATE(641)] = 27205, + [SMALL_STATE(642)] = 27220, + [SMALL_STATE(643)] = 27233, + [SMALL_STATE(644)] = 27246, + [SMALL_STATE(645)] = 27259, + [SMALL_STATE(646)] = 27272, + [SMALL_STATE(647)] = 27285, + [SMALL_STATE(648)] = 27298, + [SMALL_STATE(649)] = 27313, + [SMALL_STATE(650)] = 27328, + [SMALL_STATE(651)] = 27343, + [SMALL_STATE(652)] = 27358, + [SMALL_STATE(653)] = 27373, + [SMALL_STATE(654)] = 27388, + [SMALL_STATE(655)] = 27403, + [SMALL_STATE(656)] = 27418, + [SMALL_STATE(657)] = 27429, + [SMALL_STATE(658)] = 27444, + [SMALL_STATE(659)] = 27457, + [SMALL_STATE(660)] = 27472, + [SMALL_STATE(661)] = 27483, + [SMALL_STATE(662)] = 27496, + [SMALL_STATE(663)] = 27507, + [SMALL_STATE(664)] = 27518, + [SMALL_STATE(665)] = 27533, + [SMALL_STATE(666)] = 27548, + [SMALL_STATE(667)] = 27563, + [SMALL_STATE(668)] = 27578, + [SMALL_STATE(669)] = 27593, + [SMALL_STATE(670)] = 27608, + [SMALL_STATE(671)] = 27623, + [SMALL_STATE(672)] = 27638, + [SMALL_STATE(673)] = 27651, + [SMALL_STATE(674)] = 27662, + [SMALL_STATE(675)] = 27677, + [SMALL_STATE(676)] = 27692, + [SMALL_STATE(677)] = 27703, + [SMALL_STATE(678)] = 27714, + [SMALL_STATE(679)] = 27729, + [SMALL_STATE(680)] = 27744, + [SMALL_STATE(681)] = 27759, + [SMALL_STATE(682)] = 27774, + [SMALL_STATE(683)] = 27789, + [SMALL_STATE(684)] = 27804, + [SMALL_STATE(685)] = 27815, + [SMALL_STATE(686)] = 27830, + [SMALL_STATE(687)] = 27845, + [SMALL_STATE(688)] = 27855, + [SMALL_STATE(689)] = 27867, + [SMALL_STATE(690)] = 27877, + [SMALL_STATE(691)] = 27887, + [SMALL_STATE(692)] = 27897, + [SMALL_STATE(693)] = 27907, + [SMALL_STATE(694)] = 27917, + [SMALL_STATE(695)] = 27927, + [SMALL_STATE(696)] = 27939, + [SMALL_STATE(697)] = 27949, + [SMALL_STATE(698)] = 27961, + [SMALL_STATE(699)] = 27973, + [SMALL_STATE(700)] = 27983, + [SMALL_STATE(701)] = 27993, + [SMALL_STATE(702)] = 28005, + [SMALL_STATE(703)] = 28017, + [SMALL_STATE(704)] = 28029, + [SMALL_STATE(705)] = 28039, + [SMALL_STATE(706)] = 28049, + [SMALL_STATE(707)] = 28059, + [SMALL_STATE(708)] = 28071, + [SMALL_STATE(709)] = 28081, + [SMALL_STATE(710)] = 28093, + [SMALL_STATE(711)] = 28105, + [SMALL_STATE(712)] = 28117, + [SMALL_STATE(713)] = 28127, + [SMALL_STATE(714)] = 28137, + [SMALL_STATE(715)] = 28147, + [SMALL_STATE(716)] = 28159, + [SMALL_STATE(717)] = 28171, + [SMALL_STATE(718)] = 28183, + [SMALL_STATE(719)] = 28195, + [SMALL_STATE(720)] = 28207, + [SMALL_STATE(721)] = 28219, + [SMALL_STATE(722)] = 28229, + [SMALL_STATE(723)] = 28239, + [SMALL_STATE(724)] = 28251, + [SMALL_STATE(725)] = 28263, + [SMALL_STATE(726)] = 28275, + [SMALL_STATE(727)] = 28285, + [SMALL_STATE(728)] = 28297, + [SMALL_STATE(729)] = 28309, + [SMALL_STATE(730)] = 28319, + [SMALL_STATE(731)] = 28329, + [SMALL_STATE(732)] = 28341, + [SMALL_STATE(733)] = 28351, + [SMALL_STATE(734)] = 28361, + [SMALL_STATE(735)] = 28371, + [SMALL_STATE(736)] = 28383, + [SMALL_STATE(737)] = 28395, + [SMALL_STATE(738)] = 28407, + [SMALL_STATE(739)] = 28419, + [SMALL_STATE(740)] = 28431, + [SMALL_STATE(741)] = 28443, + [SMALL_STATE(742)] = 28453, + [SMALL_STATE(743)] = 28465, + [SMALL_STATE(744)] = 28475, + [SMALL_STATE(745)] = 28485, + [SMALL_STATE(746)] = 28497, + [SMALL_STATE(747)] = 28509, + [SMALL_STATE(748)] = 28521, + [SMALL_STATE(749)] = 28531, + [SMALL_STATE(750)] = 28540, + [SMALL_STATE(751)] = 28549, + [SMALL_STATE(752)] = 28558, + [SMALL_STATE(753)] = 28567, + [SMALL_STATE(754)] = 28576, + [SMALL_STATE(755)] = 28585, + [SMALL_STATE(756)] = 28594, + [SMALL_STATE(757)] = 28603, + [SMALL_STATE(758)] = 28612, + [SMALL_STATE(759)] = 28621, + [SMALL_STATE(760)] = 28630, + [SMALL_STATE(761)] = 28639, + [SMALL_STATE(762)] = 28648, + [SMALL_STATE(763)] = 28657, + [SMALL_STATE(764)] = 28666, + [SMALL_STATE(765)] = 28675, + [SMALL_STATE(766)] = 28684, + [SMALL_STATE(767)] = 28693, + [SMALL_STATE(768)] = 28702, + [SMALL_STATE(769)] = 28711, + [SMALL_STATE(770)] = 28720, + [SMALL_STATE(771)] = 28729, + [SMALL_STATE(772)] = 28738, + [SMALL_STATE(773)] = 28747, + [SMALL_STATE(774)] = 28756, + [SMALL_STATE(775)] = 28765, + [SMALL_STATE(776)] = 28774, + [SMALL_STATE(777)] = 28783, + [SMALL_STATE(778)] = 28792, + [SMALL_STATE(779)] = 28801, + [SMALL_STATE(780)] = 28810, + [SMALL_STATE(781)] = 28819, + [SMALL_STATE(782)] = 28828, + [SMALL_STATE(783)] = 28837, + [SMALL_STATE(784)] = 28846, + [SMALL_STATE(785)] = 28855, + [SMALL_STATE(786)] = 28864, + [SMALL_STATE(787)] = 28873, + [SMALL_STATE(788)] = 28882, + [SMALL_STATE(789)] = 28891, + [SMALL_STATE(790)] = 28900, + [SMALL_STATE(791)] = 28909, + [SMALL_STATE(792)] = 28918, + [SMALL_STATE(793)] = 28927, + [SMALL_STATE(794)] = 28936, + [SMALL_STATE(795)] = 28945, + [SMALL_STATE(796)] = 28954, + [SMALL_STATE(797)] = 28963, + [SMALL_STATE(798)] = 28972, + [SMALL_STATE(799)] = 28981, + [SMALL_STATE(800)] = 28990, + [SMALL_STATE(801)] = 28999, + [SMALL_STATE(802)] = 29008, + [SMALL_STATE(803)] = 29017, + [SMALL_STATE(804)] = 29026, + [SMALL_STATE(805)] = 29035, + [SMALL_STATE(806)] = 29044, + [SMALL_STATE(807)] = 29053, + [SMALL_STATE(808)] = 29062, + [SMALL_STATE(809)] = 29071, + [SMALL_STATE(810)] = 29080, + [SMALL_STATE(811)] = 29089, + [SMALL_STATE(812)] = 29098, + [SMALL_STATE(813)] = 29107, + [SMALL_STATE(814)] = 29116, + [SMALL_STATE(815)] = 29125, + [SMALL_STATE(816)] = 29134, + [SMALL_STATE(817)] = 29143, + [SMALL_STATE(818)] = 29152, + [SMALL_STATE(819)] = 29161, + [SMALL_STATE(820)] = 29170, + [SMALL_STATE(821)] = 29179, + [SMALL_STATE(822)] = 29188, + [SMALL_STATE(823)] = 29197, + [SMALL_STATE(824)] = 29206, + [SMALL_STATE(825)] = 29215, + [SMALL_STATE(826)] = 29224, + [SMALL_STATE(827)] = 29233, + [SMALL_STATE(828)] = 29242, + [SMALL_STATE(829)] = 29251, + [SMALL_STATE(830)] = 29260, + [SMALL_STATE(831)] = 29269, + [SMALL_STATE(832)] = 29278, + [SMALL_STATE(833)] = 29287, + [SMALL_STATE(834)] = 29296, + [SMALL_STATE(835)] = 29305, + [SMALL_STATE(836)] = 29314, + [SMALL_STATE(837)] = 29323, + [SMALL_STATE(838)] = 29332, + [SMALL_STATE(839)] = 29341, + [SMALL_STATE(840)] = 29350, + [SMALL_STATE(841)] = 29359, + [SMALL_STATE(842)] = 29368, + [SMALL_STATE(843)] = 29377, + [SMALL_STATE(844)] = 29386, + [SMALL_STATE(845)] = 29395, + [SMALL_STATE(846)] = 29404, + [SMALL_STATE(847)] = 29413, + [SMALL_STATE(848)] = 29422, + [SMALL_STATE(849)] = 29431, + [SMALL_STATE(850)] = 29440, + [SMALL_STATE(851)] = 29449, + [SMALL_STATE(852)] = 29458, + [SMALL_STATE(853)] = 29467, + [SMALL_STATE(854)] = 29476, + [SMALL_STATE(855)] = 29485, + [SMALL_STATE(856)] = 29494, + [SMALL_STATE(857)] = 29503, + [SMALL_STATE(858)] = 29512, + [SMALL_STATE(859)] = 29521, + [SMALL_STATE(860)] = 29530, + [SMALL_STATE(861)] = 29539, + [SMALL_STATE(862)] = 29548, + [SMALL_STATE(863)] = 29557, + [SMALL_STATE(864)] = 29566, + [SMALL_STATE(865)] = 29575, + [SMALL_STATE(866)] = 29584, + [SMALL_STATE(867)] = 29593, + [SMALL_STATE(868)] = 29602, + [SMALL_STATE(869)] = 29611, + [SMALL_STATE(870)] = 29620, + [SMALL_STATE(871)] = 29629, + [SMALL_STATE(872)] = 29638, + [SMALL_STATE(873)] = 29647, + [SMALL_STATE(874)] = 29656, + [SMALL_STATE(875)] = 29665, + [SMALL_STATE(876)] = 29674, + [SMALL_STATE(877)] = 29683, + [SMALL_STATE(878)] = 29692, + [SMALL_STATE(879)] = 29701, + [SMALL_STATE(880)] = 29710, + [SMALL_STATE(881)] = 29719, + [SMALL_STATE(882)] = 29728, + [SMALL_STATE(883)] = 29737, + [SMALL_STATE(884)] = 29746, + [SMALL_STATE(885)] = 29755, + [SMALL_STATE(886)] = 29764, + [SMALL_STATE(887)] = 29773, + [SMALL_STATE(888)] = 29782, + [SMALL_STATE(889)] = 29791, + [SMALL_STATE(890)] = 29800, + [SMALL_STATE(891)] = 29809, + [SMALL_STATE(892)] = 29818, + [SMALL_STATE(893)] = 29827, + [SMALL_STATE(894)] = 29836, + [SMALL_STATE(895)] = 29845, +}; + +static const TSParseActionEntry ts_parse_actions[] = { + [0] = {.entry = {.count = 0, .reusable = false}}, + [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), + [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), + [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 0, 0, 0), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(641), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(747), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(742), + [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(652), + [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(763), + [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(609), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(678), + [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(892), + [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610), + [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(803), + [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(88), + [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), + [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(288), + [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(798), + [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(86), + [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(797), + [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(796), + [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(281), + [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50), + [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), + [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), + [75] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(763), + [78] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(216), + [81] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(330), + [84] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(609), + [87] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(678), + [90] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(13), + [93] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), + [95] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(892), + [98] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(610), + [101] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(803), + [104] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(88), + [107] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(87), + [110] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(288), + [113] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(798), + [116] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(86), + [119] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(797), + [122] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(796), + [125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), + [127] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(50), + [130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(63), + [133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(837), + [135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(717), + [137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), + [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866), + [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(155), + [149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), + [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(166), + [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(173), + [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(164), + [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 3, 0, 0), + [163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(633), + [169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 2, 0, 0), + [171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(250), + [173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(247), + [175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(265), + [177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), + [179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(242), + [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), + [183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(243), + [185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), + [193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), + [195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494), + [197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), + [199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), + [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_comma_list, 3, 0, 0), + [203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), + [205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570), + [207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_comma_list, 2, 0, 0), + [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575), + [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), + [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 2, 0, 0), + [221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568), + [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 3, 0, 0), + [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0), + [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 1, 0, 0), + [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), + [233] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(101), + [236] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(330), + [239] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(641), + [242] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(695), + [245] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(747), + [248] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(892), + [251] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(650), + [254] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(63), + [257] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(742), + [260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 2, 0, 0), + [262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [264] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), + [266] = {.entry = {.count = 1, .reusable = false}}, SHIFT(345), + [268] = {.entry = {.count = 1, .reusable = false}}, SHIFT(346), + [270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [272] = {.entry = {.count = 1, .reusable = false}}, SHIFT(347), + [274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(348), + [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [282] = {.entry = {.count = 1, .reusable = false}}, SHIFT(469), + [284] = {.entry = {.count = 1, .reusable = false}}, SHIFT(477), + [286] = {.entry = {.count = 1, .reusable = false}}, SHIFT(461), + [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), + [290] = {.entry = {.count = 1, .reusable = false}}, SHIFT(485), + [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(484), + [294] = {.entry = {.count = 1, .reusable = false}}, SHIFT(484), + [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(326), + [302] = {.entry = {.count = 1, .reusable = false}}, SHIFT(354), + [304] = {.entry = {.count = 1, .reusable = false}}, SHIFT(339), + [306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), + [308] = {.entry = {.count = 1, .reusable = false}}, SHIFT(324), + [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), + [312] = {.entry = {.count = 1, .reusable = false}}, SHIFT(353), + [314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [318] = {.entry = {.count = 1, .reusable = false}}, SHIFT(541), + [320] = {.entry = {.count = 1, .reusable = false}}, SHIFT(542), + [322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(548), + [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), + [326] = {.entry = {.count = 1, .reusable = false}}, SHIFT(549), + [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), + [330] = {.entry = {.count = 1, .reusable = false}}, SHIFT(511), + [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [336] = {.entry = {.count = 1, .reusable = false}}, SHIFT(400), + [338] = {.entry = {.count = 1, .reusable = false}}, SHIFT(386), + [340] = {.entry = {.count = 1, .reusable = false}}, SHIFT(399), + [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), + [344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(398), + [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), + [348] = {.entry = {.count = 1, .reusable = false}}, SHIFT(395), + [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [354] = {.entry = {.count = 1, .reusable = false}}, SHIFT(489), + [356] = {.entry = {.count = 1, .reusable = false}}, SHIFT(480), + [358] = {.entry = {.count = 1, .reusable = false}}, SHIFT(470), + [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), + [362] = {.entry = {.count = 1, .reusable = false}}, SHIFT(468), + [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), + [366] = {.entry = {.count = 1, .reusable = false}}, SHIFT(482), + [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [372] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370), + [374] = {.entry = {.count = 1, .reusable = false}}, SHIFT(378), + [376] = {.entry = {.count = 1, .reusable = false}}, SHIFT(384), + [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [380] = {.entry = {.count = 1, .reusable = false}}, SHIFT(382), + [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), + [384] = {.entry = {.count = 1, .reusable = false}}, SHIFT(380), + [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [390] = {.entry = {.count = 1, .reusable = false}}, SHIFT(258), + [392] = {.entry = {.count = 1, .reusable = false}}, SHIFT(282), + [394] = {.entry = {.count = 1, .reusable = false}}, SHIFT(280), + [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), + [398] = {.entry = {.count = 1, .reusable = false}}, SHIFT(279), + [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), + [402] = {.entry = {.count = 1, .reusable = false}}, SHIFT(278), + [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 4, 0, 0), + [410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 4, 0, 0), + [412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 3, 0, 0), + [414] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 3, 0, 0), + [416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 2, 0, 0), + [418] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 2, 0, 0), + [420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_elaborated_ident, 2, 0, 0), + [422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_elaborated_ident, 2, 0, 0), + [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [426] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_struct_member_repeat1, 2, 0, 0), + [428] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_member_repeat1, 2, 0, 0), SHIFT_REPEAT(330), + [431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_member_repeat1, 2, 0, 0), + [433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), + [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), + [439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_list, 3, 0, 0), + [441] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_list, 3, 0, 0), + [443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singular_expression, 1, 0, 0), + [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), + [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_singular_expression, 1, 0, 0), + [451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_elaborated_ident, 3, 0, 0), + [453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_elaborated_ident, 3, 0, 0), + [455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 3, 0, 0), + [457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 3, 0, 0), + [459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 2, 0, 0), + [461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 2, 0, 0), + [463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_expression_list, 2, 0, 0), + [465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_expression_list, 2, 0, 0), + [467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 1, 0, 0), + [469] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 1, 0, 0), + [471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bool_literal, 1, 0, 0), + [473] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bool_literal, 1, 0, 0), + [475] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_ident, 1, 0, 0), + [477] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_ident, 1, 0, 0), + [479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_swizzle_name, 1, 0, 0), + [481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_swizzle_name, 1, 0, 0), + [483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_phrase, 2, 0, 0), + [485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_phrase, 2, 0, 0), + [487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_expression_list, 3, 0, 0), + [489] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_expression_list, 3, 0, 0), + [491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_float_literal, 1, 0, 0), + [493] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_float_literal, 1, 0, 0), + [495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1, 0, 0), + [497] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_literal, 1, 0, 0), + [499] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hex_float_literal, 1, 0, 0), + [501] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hex_float_literal, 1, 0, 0), + [503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paren_expression, 3, 0, 0), + [505] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_paren_expression, 3, 0, 0), + [507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_int_literal, 1, 0, 0), + [509] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_int_literal, 1, 0, 0), + [511] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 1, 0, 0), + [513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 1, 0, 0), + [515] = {.entry = {.count = 1, .reusable = false}}, SHIFT(232), + [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), + [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(822), + [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [529] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 3, 0, 0), + [531] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 3, 0, 0), + [533] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 2, 0, 0), + [535] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 2, 0, 0), + [537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal_float_literal, 1, 0, 0), + [539] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decimal_float_literal, 1, 0, 0), + [541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal_int_literal, 1, 0, 0), + [543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decimal_int_literal, 1, 0, 0), + [545] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0), + [547] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0), + [549] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(768), + [552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871), + [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), + [556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), + [558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_expression, 1, 0, 0), + [562] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_and_expression, 1, 0, 0), + [564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_expression, 1, 0, 0), + [566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_or_expression, 1, 0, 0), + [568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_xor_expression, 1, 0, 0), + [570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 1, 0, 0), + [574] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 1, 0, 0), + [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singular_expression, 2, 0, 0), + [578] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_singular_expression, 2, 0, 0), + [580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 0), + [582] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 0), + [584] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 4, 0, 0), + [586] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 4, 0, 0), + [588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), + [592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(588), + [594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_if_clause, 4, 0, 0), + [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_if_clause, 4, 0, 0), + [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), + [604] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_clause, 3, 0, 0), + [606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 3, 0, 0), + [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 2, 0, 0), + [610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 3, 0, 0), + [612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), + [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(763), + [618] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_statement, 4, 0, 0), + [620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_statement, 4, 0, 0), + [622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 0), + [624] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 0), + [626] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 4, 0, 0), + [628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 4, 0, 0), + [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [632] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 0), + [634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 0), + [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_statement, 3, 0, 0), + [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_statement, 3, 0, 0), + [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), + [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519), + [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), + [648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 3, 0, 0), + [650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 3, 0, 0), + [652] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 3, 0, 0), + [654] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 3, 0, 0), + [656] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_body, 3, 0, 0), + [658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_body, 3, 0, 0), + [660] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1, 0, 0), + [662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1, 0, 0), + [664] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 5, 0, 0), + [666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 5, 0, 0), + [668] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 2, 0, 0), + [670] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 2, 0, 0), + [672] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 5, 0, 0), + [674] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 5, 0, 0), + [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [678] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_body, 4, 0, 0), + [680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_body, 4, 0, 0), + [682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 6, 0, 0), + [684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 6, 0, 0), + [686] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 0), + [688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 0), + [690] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 7, 0, 0), + [692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 7, 0, 0), + [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [696] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 2, 0, 0), + [698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2, 0, 0), + [700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619), + [702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_expression, 3, 0, 0), + [706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [708] = {.entry = {.count = 1, .reusable = false}}, SHIFT(296), + [710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(620), + [712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [716] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_expression, 1, 0, 0), + [718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [726] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_operator, 1, 0, 0), + [728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_operator, 1, 0, 0), + [730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [732] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_additive_operator, 1, 0, 0), + [734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_operator, 1, 0, 0), + [736] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_assignment_operator, 1, 0, 0), + [738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_assignment_operator, 1, 0, 0), + [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_expression, 3, 0, 0), + [744] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_expression, 3, 0, 0), + [746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), + [750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), + [754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), + [762] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), SHIFT_REPEAT(718), + [765] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), + [767] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), SHIFT_REPEAT(652), + [770] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), SHIFT_REPEAT(653), + [773] = {.entry = {.count = 1, .reusable = false}}, SHIFT(479), + [775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(738), + [777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(881), + [779] = {.entry = {.count = 1, .reusable = false}}, SHIFT(880), + [781] = {.entry = {.count = 1, .reusable = false}}, SHIFT(879), + [783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(878), + [785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(573), + [787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(877), + [789] = {.entry = {.count = 1, .reusable = false}}, SHIFT(876), + [791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(875), + [793] = {.entry = {.count = 1, .reusable = false}}, SHIFT(578), + [795] = {.entry = {.count = 1, .reusable = false}}, SHIFT(874), + [797] = {.entry = {.count = 1, .reusable = false}}, SHIFT(567), + [799] = {.entry = {.count = 1, .reusable = false}}, SHIFT(873), + [801] = {.entry = {.count = 1, .reusable = false}}, SHIFT(872), + [803] = {.entry = {.count = 1, .reusable = false}}, SHIFT(566), + [805] = {.entry = {.count = 1, .reusable = false}}, SHIFT(507), + [807] = {.entry = {.count = 1, .reusable = false}}, SHIFT(515), + [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), + [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [815] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shift_expression, 1, 0, 0), + [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [819] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_core_lhs_expression, 2, 0, 0), + [821] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 4, 0, 0), + [823] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 3, 0, 0), + [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), + [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [829] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 2, 0, 0), + [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(560), + [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lhs_expression, 1, 0, 0), + [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [843] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relational_expression, 1, 0, 0), + [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), + [851] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_core_lhs_expression, 3, 0, 0), + [853] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shift_expression, 3, 0, 0), + [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(734), + [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(733), + [865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(522), + [869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), + [873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [877] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lhs_expression, 2, 0, 0), + [879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_directive, 1, 0, 0), + [881] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_global_directive, 1, 0, 0), + [883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [885] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_requires_directive, 3, 0, 0), + [887] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_requires_directive, 3, 0, 0), + [889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_directive, 3, 0, 0), + [891] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_directive, 3, 0, 0), + [893] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 2, 0, 0), + [895] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 2, 0, 0), + [897] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_directive, 3, 0, 0), + [899] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enable_directive, 3, 0, 0), + [901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553), + [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [905] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_control, 6, 0, 0), + [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_control, 6, 0, 0), + [909] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_control, 5, 0, 0), + [911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_control, 5, 0, 0), + [913] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fragment_attr, 2, 0, 0), + [915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fragment_attr, 2, 0, 0), + [917] = {.entry = {.count = 1, .reusable = false}}, SHIFT(357), + [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [921] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158), + [923] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, 0, 0), + [925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 0), + [927] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_attr, 3, 0, 0), + [929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_attr, 3, 0, 0), + [931] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 7, 0, 0), + [933] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 7, 0, 0), + [935] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 7, 0, 0), + [937] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 7, 0, 0), + [939] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compute_attr, 2, 0, 0), + [941] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compute_attr, 2, 0, 0), + [943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), + [945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365), + [947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), + [949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337), + [951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), + [953] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487), + [955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), + [957] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271), + [959] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 5, 0, 0), + [961] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 5, 0, 0), + [963] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_size_attr, 5, 0, 0), + [965] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_size_attr, 5, 0, 0), + [967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), + [969] = {.entry = {.count = 1, .reusable = false}}, SHIFT(472), + [971] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_location_attr, 5, 0, 0), + [973] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location_attr, 5, 0, 0), + [975] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 5, 0, 0), + [977] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 5, 0, 0), + [979] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_id_attr, 5, 0, 0), + [981] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_id_attr, 5, 0, 0), + [983] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_align_attr, 6, 0, 0), + [985] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_align_attr, 6, 0, 0), + [987] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_group_attr, 5, 0, 0), + [989] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_group_attr, 5, 0, 0), + [991] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binding_attr, 6, 0, 0), + [993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding_attr, 6, 0, 0), + [995] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_attr, 5, 0, 0), + [997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_attr, 5, 0, 0), + [999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_blend_src_attr, 6, 0, 0), + [1001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_blend_src_attr, 6, 0, 0), + [1003] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_attr, 6, 0, 0), + [1005] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_attr, 6, 0, 0), + [1007] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_group_attr, 6, 0, 0), + [1009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_group_attr, 6, 0, 0), + [1011] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_blend_src_attr, 5, 0, 0), + [1013] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_blend_src_attr, 5, 0, 0), + [1015] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binding_attr, 5, 0, 0), + [1017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding_attr, 5, 0, 0), + [1019] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_align_attr, 5, 0, 0), + [1021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_align_attr, 5, 0, 0), + [1023] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_id_attr, 6, 0, 0), + [1025] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_id_attr, 6, 0, 0), + [1027] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 6, 0, 0), + [1029] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 6, 0, 0), + [1031] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 10, 0, 0), + [1033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 10, 0, 0), + [1035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_location_attr, 6, 0, 0), + [1037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location_attr, 6, 0, 0), + [1039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [1041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), + [1043] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), + [1045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), + [1047] = {.entry = {.count = 1, .reusable = false}}, SHIFT(414), + [1049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(572), + [1051] = {.entry = {.count = 1, .reusable = false}}, SHIFT(569), + [1053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 1, 0, 0), + [1055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1, 0, 0), + [1057] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 9, 0, 0), + [1059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 9, 0, 0), + [1061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), + [1063] = {.entry = {.count = 1, .reusable = false}}, SHIFT(427), + [1065] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_size_attr, 6, 0, 0), + [1067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_size_attr, 6, 0, 0), + [1069] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vertex_attr, 2, 0, 0), + [1071] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vertex_attr, 2, 0, 0), + [1073] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_must_use_attr, 2, 0, 0), + [1075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_must_use_attr, 2, 0, 0), + [1077] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 6, 0, 0), + [1079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 6, 0, 0), + [1081] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_attr, 2, 0, 0), + [1083] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_attr, 2, 0, 0), + [1085] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 8, 0, 0), + [1087] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 8, 0, 0), + [1089] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 8, 0, 0), + [1091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 8, 0, 0), + [1093] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_invariant_attr, 2, 0, 0), + [1095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_invariant_attr, 2, 0, 0), + [1097] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_decl, 3, 0, 0), + [1099] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_decl, 3, 0, 0), + [1101] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_decl, 3, 0, 0), + [1103] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_decl, 3, 0, 0), + [1105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), + [1107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 4, 0, 0), + [1109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 4, 0, 0), + [1111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_decl, 2, 0, 0), + [1113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_decl, 2, 0, 0), + [1115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [1117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [1119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 5, 0, 0), + [1121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 5, 0, 0), + [1123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 3, 0, 0), + [1125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 3, 0, 0), + [1127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [1129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relational_expression, 3, 0, 0), + [1131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), + [1133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_and_expression, 1, 0, 0), + [1135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_or_expression, 1, 0, 0), + [1137] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3, 0, 0), + [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_and_expression, 3, 0, 0), + [1141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_or_expression, 3, 0, 0), + [1143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bitwise_expression, 3, 0, 0), + [1145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_or_expression, 3, 0, 0), + [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_and_expression, 3, 0, 0), + [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_xor_expression, 3, 0, 0), + [1151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), + [1153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616), + [1155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [1157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [1159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [1161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [1163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_switch_body_repeat1, 2, 0, 0), + [1165] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_switch_body_repeat1, 2, 0, 0), SHIFT_REPEAT(19), + [1168] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_switch_body_repeat1, 2, 0, 0), SHIFT_REPEAT(205), + [1171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [1173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [1175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 1, 0, 0), + [1177] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_selectors_repeat1, 2, 0, 0), SHIFT_REPEAT(21), + [1180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_case_selectors_repeat1, 2, 0, 0), + [1182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ident, 2, 0, 0), + [1184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specifier, 1, 0, 0), + [1186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selector, 1, 0, 0), + [1188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enable_extension_list_repeat1, 2, 0, 0), + [1190] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enable_extension_list_repeat1, 2, 0, 0), SHIFT_REPEAT(711), + [1193] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_body_decl_repeat1, 2, 0, 0), SHIFT_REPEAT(202), + [1196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_body_decl_repeat1, 2, 0, 0), + [1198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 4, 0, 0), + [1200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [1202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [1204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 1, 0, 0), + [1206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), + [1208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_list, 3, 0, 0), + [1210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), + [1212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_list, 3, 0, 0), + [1214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_software_extension_list_repeat1, 2, 0, 0), + [1216] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_software_extension_list_repeat1, 2, 0, 0), SHIFT_REPEAT(710), + [1219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [1221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590), + [1223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 4, 0, 0), + [1225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 1, 0, 0), + [1229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optionally_typed_ident, 1, 0, 0), + [1231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), + [1233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [1235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_comma_list, 1, 0, 0), + [1237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_name_token, 1, 0, 0), + [1239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), + [1241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_rule_name, 1, 0, 0), + [1243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_alone_clause, 3, 0, 0), + [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 3, 0, 0), + [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_list, 2, 0, 0), + [1249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), + [1251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(539), + [1253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_list, 1, 0, 0), + [1255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), + [1257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [1259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_list, 1, 0, 0), + [1261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), + [1263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [1265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 5, 0, 0), + [1269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [1271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_alone_clause, 2, 0, 0), + [1273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [1275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), + [1277] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_comma_list_repeat1, 2, 0, 0), SHIFT_REPEAT(74), + [1280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_comma_list_repeat1, 2, 0, 0), + [1282] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_arg_comma_list_repeat1, 2, 0, 0), SHIFT_REPEAT(45), + [1285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_arg_comma_list_repeat1, 2, 0, 0), + [1287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), + [1289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_list, 2, 0, 0), + [1291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_clause, 1, 0, 0), + [1293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), + [1295] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2, 0, 0), SHIFT_REPEAT(206), + [1298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2, 0, 0), + [1300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 2, 0, 0), + [1302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [1304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 3, 0, 0), + [1306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 6, 0, 0), + [1308] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_decl, 4, 0, 0), + [1310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_member, 3, 0, 0), + [1312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [1314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514), + [1316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(825), + [1318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), + [1320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_sampling_name, 1, 0, 0), + [1322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_decl, 3, 0, 0), + [1324] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_or_value_statement, 1, 0, 0), + [1326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [1328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_rule_name, 3, 0, 0), + [1330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_call_statement, 1, 0, 0), + [1332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_updating_statement, 1, 0, 0), + [1334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 3, 0, 0), + [1336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [1338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_statement, 3, 0, 0), + [1340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), + [1342] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_member, 4, 0, 0), + [1344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 7, 0, 0), + [1346] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 4, 0, 0), + [1348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), + [1350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(769), + [1352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537), + [1354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1, 0, 0), + [1356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [1358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(739), + [1360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(770), + [1362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(535), + [1364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(771), + [1366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(534), + [1368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_name, 1, 0, 0), + [1370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_value_name, 1, 0, 0), + [1372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(772), + [1374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530), + [1376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(773), + [1378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(528), + [1380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774), + [1382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526), + [1384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_type_name, 1, 0, 0), + [1386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(884), + [1388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), + [1390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807), + [1392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), + [1394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 8, 0, 0), + [1396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_name, 1, 0, 0), + [1398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), + [1400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), + [1402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_expression, 1, 0, 0), + [1404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decrement_statement, 2, 0, 0), + [1406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_increment_statement, 2, 0, 0), + [1408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 2, 0, 0), + [1410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [1412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [1414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(775), + [1416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), + [1418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(832), + [1420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 1, 0, 0), + [1422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [1424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [1426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), + [1428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(776), + [1430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(521), + [1432] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optionally_typed_ident, 3, 0, 0), + [1434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [1436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), + [1438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0), + [1440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [1442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), + [1444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676), + [1446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672), + [1448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), + [1450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), + [1452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), + [1454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_decl, 4, 0, 0), + [1456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), + [1458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 4, 0, 0), + [1460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), + [1462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), + [1464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [1466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [1468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [1470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), + [1472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), + [1474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529), + [1476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), + [1478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), + [1480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(533), + [1482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(538), + [1484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546), + [1486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563), + [1488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [1490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [1492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), + [1494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [1496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), + [1498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [1500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), + [1502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), + [1504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), + [1506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_init, 1, 0, 0), + [1508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), + [1510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [1512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), + [1514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [1516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [1518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_or_value_statement, 3, 0, 0), + [1520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), + [1522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), + [1524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [1526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [1528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), + [1530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [1532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [1534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [1536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [1538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 5, 0, 0), + [1540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 3, 0, 0), + [1542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), + [1544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_or_value_statement, 4, 0, 0), + [1546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [1548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), + [1550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), + [1552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [1554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_statement, 2, 0, 0), + [1556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), + [1558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [1560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 4, 0, 0), + [1562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), + [1564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [1566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [1568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [1570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), + [1572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), + [1574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), + [1576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), + [1578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), + [1580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), + [1582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [1584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(675), + [1586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), + [1588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_severity_control_name, 1, 0, 0), + [1590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), + [1592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), + [1594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), + [1596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [1598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 2, 0, 0), + [1600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), + [1602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [1604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), + [1606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), + [1608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), + [1610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574), + [1612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473), + [1614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), + [1616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498), + [1618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), + [1620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), + [1622] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_update, 1, 0, 0), + [1624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [1626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [1628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [1630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490), + [1632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [1634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [1636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_assert_statement, 2, 0, 0), + [1638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [1640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), + [1642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), + [1644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [1646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [1648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [1650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 3, 0, 0), + [1652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), + [1654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625), + [1656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [1658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [1660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [1662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), + [1664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [1666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [1668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), + [1670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [1672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [1674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [1676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [1678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), + [1680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545), + [1682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), + [1684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(583), + [1686] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [1688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 4, 0, 0), + [1690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), + [1692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 5, 0, 0), + [1694] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_if_statement, 4, 0, 0), + [1696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), + [1698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 5, 0, 0), +}; + +enum ts_external_scanner_symbol_identifiers { + ts_external_token__block_comment = 0, + ts_external_token__disambiguate_template = 1, + ts_external_token__template_args_start = 2, + ts_external_token__template_args_end = 3, + ts_external_token__less_than = 4, + ts_external_token__less_than_equal = 5, + ts_external_token__shift_left = 6, + ts_external_token__shift_left_assign = 7, + ts_external_token__greater_than = 8, + ts_external_token__greater_than_equal = 9, + ts_external_token__shift_right = 10, + ts_external_token__shift_right_assign = 11, + ts_external_token__error_sentinel = 12, +}; + +static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { + [ts_external_token__block_comment] = sym__block_comment, + [ts_external_token__disambiguate_template] = sym__disambiguate_template, + [ts_external_token__template_args_start] = sym__template_args_start, + [ts_external_token__template_args_end] = sym__template_args_end, + [ts_external_token__less_than] = sym__less_than, + [ts_external_token__less_than_equal] = sym__less_than_equal, + [ts_external_token__shift_left] = sym__shift_left, + [ts_external_token__shift_left_assign] = sym__shift_left_assign, + [ts_external_token__greater_than] = sym__greater_than, + [ts_external_token__greater_than_equal] = sym__greater_than_equal, + [ts_external_token__shift_right] = sym__shift_right, + [ts_external_token__shift_right_assign] = sym__shift_right_assign, + [ts_external_token__error_sentinel] = sym__error_sentinel, +}; + +static const bool ts_external_scanner_states[21][EXTERNAL_TOKEN_COUNT] = { + [1] = { + [ts_external_token__block_comment] = true, + [ts_external_token__disambiguate_template] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__shift_left_assign] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + [ts_external_token__shift_right] = true, + [ts_external_token__shift_right_assign] = true, + [ts_external_token__error_sentinel] = true, + }, + [2] = { + [ts_external_token__block_comment] = true, + }, + [3] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_end] = true, + }, + [4] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + [ts_external_token__shift_right] = true, + }, + [5] = { + [ts_external_token__block_comment] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + [ts_external_token__shift_right] = true, + }, + [6] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + [ts_external_token__shift_right] = true, + }, + [7] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + }, + [8] = { + [ts_external_token__block_comment] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + }, + [9] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + [ts_external_token__shift_right] = true, + }, + [10] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + }, + [11] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__shift_right] = true, + }, + [12] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + }, + [13] = { + [ts_external_token__block_comment] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__shift_right] = true, + }, + [14] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__less_than] = true, + [ts_external_token__less_than_equal] = true, + [ts_external_token__greater_than] = true, + [ts_external_token__greater_than_equal] = true, + }, + [15] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__shift_left_assign] = true, + [ts_external_token__shift_right_assign] = true, + }, + [16] = { + [ts_external_token__block_comment] = true, + [ts_external_token__shift_left_assign] = true, + [ts_external_token__shift_right_assign] = true, + }, + [17] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__shift_right] = true, + }, + [18] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_start] = true, + [ts_external_token__template_args_end] = true, + }, + [19] = { + [ts_external_token__block_comment] = true, + [ts_external_token__template_args_end] = true, + [ts_external_token__shift_left] = true, + [ts_external_token__shift_right] = true, + }, + [20] = { + [ts_external_token__block_comment] = true, + [ts_external_token__disambiguate_template] = true, + }, +}; + +#ifdef __cplusplus +extern "C" { +#endif +void *tree_sitter_wgsl_external_scanner_create(void); +void tree_sitter_wgsl_external_scanner_destroy(void *); +bool tree_sitter_wgsl_external_scanner_scan(void *, TSLexer *, const bool *); +unsigned tree_sitter_wgsl_external_scanner_serialize(void *, char *); +void tree_sitter_wgsl_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_wgsl(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, + .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_ident_pattern_token, + .external_scanner = { + &ts_external_scanner_states[0][0], + ts_external_scanner_symbol_map, + tree_sitter_wgsl_external_scanner_create, + tree_sitter_wgsl_external_scanner_destroy, + tree_sitter_wgsl_external_scanner_scan, + tree_sitter_wgsl_external_scanner_serialize, + tree_sitter_wgsl_external_scanner_deserialize, + }, + .primary_state_ids = ts_primary_state_ids, + }; + return &language; +} +#ifdef __cplusplus +} +#endif diff --git a/tree-sitter-wgsl.wasm b/tree-sitter-wgsl.wasm index 4be24a6dcf97d28086add9ba883dd5766d9c8c8f..b1235d2428767f1ad6ab89371275e6f9f412dccc 100755 GIT binary patch delta 17880 zcmbVU3t$$-wVv7iU&-#01bImm_Ya6D@=^p9!3;_;B0lPEYg_M)RBh`Y5C{=#d+SCG zihvLe8pKqi(u#_jDi&;`7Z5Ahpi!xUg&Htgth`iIYH7XSnX~ghLbO_7o&C<7*PJ=? z+{C%76I<^~)b$M7>*A5Pki+vXlYzh^gUhS{Z}<;hg}6+humd7R@Lv=JWMDli^Xx0H zo*k|D{?*q`6O!KJ72m&N>V>nX35$?dQ88uKtShUkD}FTPs;MHbxu^VadR4WE(0f5e z#jNW3&!RsGx)((vQDMgt!jdv3qqc3w&$5duDz2R}Yg)zSQ>IR>xV(CL)hrR|6Vj&4 zm@)ObiYum6PpPQ7a_aQUXNhQGb=8$uR?NDpy86nhifey7YpN*9^Q7o+Iq~j2V)6V$ zUjEz#vd9+Fxg{xO&|j)0Z^u$7g67X6sZo}|Ya>%?{wzX56BE`vW;m9Ggw@fIV|ggj z9!r%7*0P#O?GMC4o|cejqtUX434d!PLO_<+GiAS~5Mcuo>NXjfRw7tzp-sOl8S3A{ zylvZz!EK@N`$o8(1*}k@gQ2ZqAk{9$hI=b6^DvK!eVCl$B`jk!nmVXh#MI{*Db_NjGyQm;$@7N^bYZI z#!HR-3dU_c!}{j-SU?`%X9z2q;Vz?aHRCUgf)>U%7`%q@&8CIx8SgRj8yJ6Na4X{$ z!{62(=#Z^5A=}Ihi;F`Kw=llL;BAce6@>Nej1QSE=wMuL^zCANRLH)Y;hek>?+@+& z-N+wchTBY!9ArGtWWyoG4;lqEJGB3M4Sy};TGPdI8Gmm4UBKAHyKV=!{{xfEi@CnT z$S-01y0PELI3D`n#L#5+GKM=$c$YK&$VjhXyxr6{@8JG_#W1X7h8s-tRx{pc!qdXI z$tYOE_+Eq8Gv06ddjsQpO!u{F91dgs9;nX@^JZplFw9#Re_-mjF}~Z>w=@34)ORp` z(Kxe<@iv2ZGrr5n?5;3bUL8r;Zuy}?b45195ZW4zDc<%~Zwxwj(3CRdvYqy5_r!%AjY z*gedy)r=RLh_o-3ZH)h7474-eU`BffU6S4!$@U)pg4>De5=DS0T z_n7fp^N!Ae7K3XU&o_838|zLjyK;SbuFu-vq0Gvj$CC$=zt!x-Gg_+^9J86PsZgYf}_cQM{+@NUL0h4uoq zp9zbM!2^tIjfV#rr}rj@7{6^=Sks|%;2{(8TE+*=E^030C8moOFuujn5ykkcW5R1@ zi?NvTc7vBNe$q_(jf`I~^-YXFG{bfo<62X{obg&Czk=}!T~Fh$nF)^=hLw!x8@!rv zt!ZHk<2Q}LHH?3046bLq%HR!*8;!nJ#s{cg@BiAE@HZo{nejo>1zQ*|GWFXS|I6TZ z#=A`pbueCRl5Q8{4F>OKyb3tbTi^Xm_}I*32N-WQ0tXpCV(Jeu-fEVPns;>$+-Ptu z^21@+$oNLn1x<|GO#L#(B_aFr zklp0q3dYYQjQwUNtT6UgGHx;YRx^Ij)VDC+VelHpPjOOXN6&bn3D^e4_nG=u#)slT z=wTZZ+Kj@@j6XCEY+?MVQLv41lc{fKJm26B#_fiG7voQi{@si>1%_ci6Xu#>eSq;Z zrppd8o^SSAhZw(YlDg(SodQj!zLxPygXc2dX%@c)jDuBXIj&>ElLjwlyw>0)jF%b( zjf_o$niwuK?8_K$GI%-Ttp=}P9K2-)Su+z}H4R$H_zly5)r>b7+`@Q^>EbnvA2a&a zGrrpx+`#x=6VO(T12xYysErx68N8YCqXutb{J2rDjq$t2p?1cf8r;G7fJypYjMo|Y z-Gnj!t}zDoGed_Nga;VEV_JBS@%v_GKg4*U;jj6tPJw64G*rv@b;CcG@tvlA0Wi(K zW5O{|$MuhzLA{u9y}?TuuQj-l@lrD{H!*HB$H!%i|7dnE%Ne)!3GJ-_Ci^>$Ky%1o z@Jhyy8-dk~Z!q;OjCY&*HH=#|tr92!2b9772bU z94!jN>OP}IALU1V%W;~d@U01?@XM_hI991u>RYN{5;6KRG@#$K0ZSb-*|WHc?C=|z zfs{YdlLd||o&NI35}_U{NWuI0c`5a2951&PrV1_L)YtUu5!_m=-{0tNEf21s$=8DvE!l{m#o)cg4=n3eMLeW$p@@&x)(9ehiGZz9aaeH#WZ@Q{q1;*7jQ z4aFI6S>B?pg|3wy72Oh{g0T~k-C3+|9wL+p1XYF_bJ)-a&oGs^*m(cuTI#Y0nwPX)&p}13QrXv_!7^21s~Y^V0<=PXfj`pELp5SzT~mVgQ9#Oz z5ru=Oi(gP&62~};v&;p^o;YGxD56R@C3(IB0FAkJ?WBcJTPjgm0@tXB9B=7S4nNRn z$G72GfMDloZK)(2fcr5&AEO+Z6m#8g5{h`2%;P$R7qLyin@A;sO5-WOxI#upaYx|m zSiwzH6&CnWWCJ|6fapC@h2e;C=ev3cq|?uIQ0IQs;hvc9Qo5 zPCX8VIT`OFztc>8{pk4R=)Y!Xv=z}KPq)BMK{6S~V6ig1S!2nMQ~KIyEc!oD=2>n) zIh>V#egersxrCI7A-l&v3@dG9g+}XPmcFKyPDYRy5u{5D&IFVNmB|P>MSbGKE8>P5 z$Qz6x%TG)$PFmzlruAKgv~ve!*uAJ9Lzp9TZsig8TiIYM($+VTWA8+Y)Bm_rU|wDf$5 z2w?t4B7!|guUf*aYZ)zOY+*Xhnf#!D7O@GSio!xFwBd01vq+KE<*++EM|Au{!RVI@ zcJ@HqM+;!S@7J_M-545*lOcp9r~NUup3{^F(WFB|FDoixDr0KP?RUK_V;v^v`cPD? z!-He9#&iO#k)zn007DK767OoLgSDdc9sivk~gq3sTL{B@UbCUN_Y%4Sc$1pJFNofWB zML_#K3!YIz!{{18OE?*!LrucBXmbLH1qmyWn-p+TQf!G`TY#upnsSKPzs$svg_Tq{ zy#QO75}_XG0d;yOx-f#5hM+)iKNr|pQPGPY2Zh5#YoHoNgV3TGIb5-H1iR)vp%X89 zi8cda%)>Y!r^O)L&Lkz;WSeaqX8-KYRM2;6hG#%AW*1C{{#AqK0M) zRWVbo6_u)Qx!yD5%%L8Uc&FWMaVja*qNv`4qkXikjq2SPZTrv^Y-Z5Uy#$C_YE>V77dFrVEw~8j2eCFX{V1lW9+yyOV#+Z&Yn>J z&(gucJ$l}je!^>%a0v}ivbw~Et813WQmJ85lzFp3992$}yRy)clruD5KSO6nFb}Bx zA}QT_k&~7hQK|CEy?dnk7&KtaPPXbj$!maG-wvlI@0ZeTkPev(a6E%O346^CXY9q) zz;ejP$R0LAu-94PojD2{rF$nU#3nt|SMx|lUtA3$eR0xi`Wd^A=HHu*Tmh-G$iLTBR60AXIj<NeI?%6>vOYkxj7A-Zj4ADf1;r0SLXFk2tN%8`(Ub^$Nk)b#MlSXI^ht9jCkKyPC7St031ZpujhLw4@kWP4byL4~XG`!bIx7NHblJ1S>eW7$~ z%=>N9y`EHneSviUH+-Eh-JgZ8^Q8MzNA=cosig*2b_?u9~8-+#7U^7*&Q50}ArXy{p_HBllyD zATwU+{=!iwciDe6+<)ortC8TfF=45uNAW{2`F$%-^4 zykF$b9yNb9qwfcpHcmWz_TZT!_}|V0`!ba^QC#m{hN}ZbTV9?WY4b$}an&M|xF&<{ zaJp*GF<4lR+Hksx(&*IOeBo34(h zT%f-oz9%ZXMXtB5=Y04CryC5l0T^;R>$&@`g8>zXoeQZEw4Kf}!wv;{sE&f19wIQ+ zMhAX%gr=y0)LEDb%JAP$L|K)0UG{MHt^=6|G%B#g1Pn*>bu@?)FnzwG@=#26R6dIH z$PwD58b<9!gLW#L->R+@u{KqY%x2X_vPLthwEWAxkA^7YqEqcbtgH>fe+>6 z1MQy4hwxz4*@y1%VV0wYWcx5n%*s;t?OZ*4XdyMZLRF$FOXw2!97nnEp^SW>E6V!g zPVs`M8lG)vhM18fQ|2fSGG~*FmlZp1Gh&|ZwH|OAb4J#P^`>RIXj*O;O{3|8GzOXO zV3q2mY=W%lmI8=8qp6*~EMBLLH z)f2_3j_QSCG%aZnca)MdCF0wT`WxmR_qz^yDB_+-awlcW9c2a+j7>m2G9lug;HZ%( zj<0VY-LnW&mO|y3?(q)78gY-SFF3VlK2dSEa-2JYV4z`{H=KFLx&z73sBA;V4%X^Y z_t>whK9iMNGI-bJXc5j&{@- z6h}Gg3>3wrVQg0#U}z}3q8p)NxOEsCohT>-hp@Zp@Ah@nIH>DGeB-`E-HBX%W^Oh1 z)Nx)XGOHqXhqFs?frKvtnN`s?tD>z}Ma)UGDk@qCvBKC`6tPLg>>BqYl~_%AVT^TJ z7{~G<28&{;JJ!Jo8BX_fFg>H};iz>~9^t6xsqF5k^;8x)*utSKbkrZHEO69|A{j*7 zZjRbO1kX_$sdOE+l}d*fGIW1#Q)yMFGejI=!wOJht0F%2W6S+~O#)~Bk=c8LuA@M0 zr2quj7f=9B`DOtakq*E}8er6ihxwW1qEtnbu+&R-a6%PMTj~QET_b~>eN5NB=Jpu- zJMx?PJ3Q_0$utvW{KcMt4q|$%@oya7O%9*@ANqUpm-vhP*ITd788$5K@JX1nvK-Fx zm$!G}(aam6bK>jwJa>HHo%AK1eTid3(~gaBhj#54@{*5>Ublbi6XhT7W4r3&5#P+Q zA!)~kyF1@&E_s13B$gbH-ppO40Q)P zejro_U2|upm7b6%;O5;@`4hckaKo?OrTNIB-M_y3wUYQkflpI8a?~;#>r;Ph=~HSQ zE);N|fDv;XQDjOzi6cK#28NUyamEgqq{YCr6C|b#2o>Fktv*xwhm@UZ3Kp=vWFqOP zeNRWbF#Wd^HQ!OYsKmF7FK-6E?a~Qfx7JJGqt3r= zc$F8Yb_b^67Tx}Tg#mmhPaB9a?^j2*%8O>U5j4?ZQ_d`K0(C6fhB`lq zLo<$hG#k_1qbnTY%#g7_)kXQHmQJnuGBH&`vn9^D`jqRV5WYOu$IarodS#*eSsaEn zfxnzb>291ST8YG^b1r^&gvQSZd_%?yzG$5vRk-Ke(_cn1*L6H9=$5XpdPyX0g#myY zy4AAYKQWevGbi2BmB{)hN>8n?9OBnU)tkYerjMcT(=qgIxgCG`B>E8%U~ZeVNP^Ch z+i}UH=x9O&Iura^>)xRcn!VC^A8frT>2ijQ(+v#ULWJLi(&$@qi~cLNpcc0;?pBnz zV@Y%Erjz1U`KA5Cn0SF~B&vuLw)YekCtvA8-0 zCDeiOBQU-$DJk4Hz>v(c+(DM#kelUe9E81KeNC$VVEq$hamn?rZtQ@NU}0{U=)Ecx zCE8}Kolfv=k`CPN>zeQ>2(L&SHKhBRCcF#6%MynU>Ang=x*y=$0oaeoSMe7Y$-wWk zEba?PRs}dqlZ>83+O#riOe^k1Q1J>XaL`SMaR)`{6}d_O6`N3t8wvMiEw)QHgXSB? z)Qp!T9ba8AhL$%<-lcmZ^r{oFrjf%hQrJE`YKR0MF0v+ZP!&Uq(xTZ=30RAf0{x8 zdI}5rS|U9MAJ^d}?L76H{hVx(q6JmhnoIXtEp`B6zrjzB5(QQ8_Z=Pi7cvCW+$?F| zF5Ta27HZNHl6LUY{hg*zs2|7gwqY+X-DhB8BVN+hKcuXAMy|qNu?m%#O{BY83w{p4 z75EJ7#Y6>OUBT{W5%F~)cIsC9xFB4^DT536dcQ6*@TvI6b9+2vd zfJl#pdM0}JOI{3DXbSaeljP;^QB9$!-6!e5Bi%3xXkny{*2ohzPrtAb| ziPX0N?t_{_9gPnfdL@4VRuN0v#fOy81n%zNA@L?nL8k=XV*GLmk?sRGE&Sv>xXBnk zUGS$9%J(}Y?;Cyzz7wJJF0F!U>Ll+Z*bD_^5q@KkbS~9Al(7pl9}U8cxlPiIMW8<) zfJ6zhK=LuG!FY!+2uh!0*ckaVPpUnn8sAhxsaqv)s}`q?&6T{t;*SO-bqhXkk<=Y< zeh8eOZ+HW5j^u^DPLrt1Yb9@R7HP@{pxneCjogKrLNUHkVrGTH+cbr;=?46kBT*J; z3XOmosXiqN8>1Y=Z*mcVzl4zD>jQO=D7R`M3e+#u--$36j$-)OE?>@5bbhWrryBn1 zL99Ph{~*Ggw886eF98C73n7u8s(%vUrnHmSs(%rIzmQPh1+&!`M1dI^(l+1qQWUCH zjYNgM|ECbnQa2FRA5r!ISE(Bb|AM-K`h2FkiLkz7rWs*|swMn$swX@hTU%g#mrUMY zt!@Sm-0K{g0&IL00pr`Kn5u3e#%qmWrJ754Hem{DO5IBM8dHCjnn$>r)?M43Mr0a0 zKUVXJtkn|!ky=1_CVtcoZ2EHuniY6gsN0A>o#d#Um#c+@uO>{R@`q{>;c0a3Y`Z_A z?TYPQNww7L6{?PEwK{VCf7I=SuX1RHvfUpNA31%gx`XJr#-t^AqW1$;Pxwa&uTXt+ zPA2-u#i6)NEhetCweP7r312~4sE;mDcM-mvFira3RSkr-Rf_p{)Dpr|sGi#PZFM){ z%N&J6touEX15LkJEhYN@(ALPt9U|DNOD|IQ5cyKV)QAgJBjFzye1ZBU;qMcsbUR<& zOPKU({>kb-!j}*xcg|BygtdMO-XwK@K!ooQ14ZRr^#I{-6W#?}t{x=(UxW_=pQDx$ zzSyA^!KSNzR$QijMf8gZQ=d&xzb1@t8@!sItsWwL0bw$HmRe5u{BZv@(HpNGCc3+IDicv=Ua25QP*vHU^Pa8MY&`KRORIMU1q>lvoBu5>K zVubNwuv$&ExaEEZWqPsGJMmE?M~)P@@%|lg-~t>AzKx3)=%ug?Qokqq$@<7?(=9dj zzf>_$wNQmNL5Y2=dY15T5~R2dP|p#@bvWbx>i-C9#nkK)wTAEzswbROYYD>uhs{^( z2;&BUGxZqtJmC}c{*Pvderi1tjyD2Fs}~3lauhZewwok6IZ~|tKy+MtbBgy>FA_eM zKCsz*f~Rimqc#w^Ke18!daI3uaRYD+*lDIzjWQJ8Outkr%L zh>7{CjWF&5uw%06cwdMDKkdv`sg07}o?xLrfq0X|Ax< zW+Fq|8>BT(;T)C>_~O)n`*FO@w4>m|oQM#A&l7>T z4Myf!LOckh6~M2f9wdQ6Oo8H$@bcd%UqN{Tdoy z5B<3oWdoi{Ja^-{2G2zBT#Dx|yhmVPM8S9j2t{}<#4{Ps#dyxe^F2J@!K3h;ji(wy z)A4);Z$5)#+fjCd@x^eY0gepB(*k@y==%`Z4wQ|cHN(bVKtBhq9|t|_@cuqz&N~Il zo<`_Kpd z!&3np4>i2HM;;?*Hhj28_KwyKrNjz)uEQPz^ z6U*?v3D4FWtUwL;!&wX;tw@w4;VpR7;IR@om@E(Cj;aQ5O5qUBRjW`eGPCTu6 ehT^#a&s01cQTH^;Vm$xE`*vs51N-E{9{&$thB7Mv delta 20900 zcmbtc4PX>SvYwvZO#;&k3mAS9l+B_L{^bAv$F#b^fTu{{MEqF-1WiZ+Bq6A$PE=47 z4)MY}@I*!BlvDJgprE3Mig!6h4T6duoT#X%+{q~_Do@{6UDG=o0={?eNG3D&b#--B zb#--5ZOA+KWGvpCu{_f~aC>?%-4gv;OcSn!OSsc)*ZXNr3%D*&`U%{k%bFGhjq9&A>TCt$q67-ywm^!m;LXBk+5l$qEs;Y`Bs}r+|O3JJZ!m<-n&nv7Rm`Ds5 zGQFg_s<^tqJ-2+wpm_YO0r47^k&|Q@mPmL^=avtMAImo?$=83dW=vET&nm7gu9#6= za9&~Jc%9?tPVXO&7Zt{*TQ+Gk1|roR~4EynIeYfi~6m>WC!&&{=aT7Zg>_EI7L&9zTDQo0tf1^&e7MTt26!IK_vB z{S)y))mP0ej`O@sXfA;|!p}2{XBEvat4@%0iRz-u<0SWlVh1!8>-z2+SYC8xL3unr zar~r2;XwN4X^JIB?mwtvetB_a$qaa}9Pv|77N<^dN?OzC8dzRZaXe9>qUm!gtF3h6 z?xV%J6pTDF%o&nMloeN16_i5_Pm#fi!oi72{XAW`6ZfGZ{x5y{CiNeHj%6j&XUv_O zFow9s5-PY4f^R317vlIM+YSbNh&$BxU9Gu-6qsfN8L*&q{&IsXt7^WR5mLycaB?yC0SF9 zNQz@FhZk2AO~<$;vkInERrc>+QiZ6lF2207sH|X8A|4-HQ&cv;I9`|xVmz@E{2(R2 z&6rbBLz%C7PO^Wzj2U|+wa_VQrp|(Xg6ofIEH9d^SE9)ul&Ah*Sqkfa0^A+CeaSpG zes+3#8s<1?1wytZgs^dmKtPC~ZP^wfA}9ou44^3xNVA1)r-dwA1Orw`1VcbVc6wdQ zliMT`3yP}B6EiSd2}(RwR@7g`Cb6gF>;A}Uu4lpV^0H1-1OBswKAfENGr8RTnH_=5H6d-b>(T{~O6W|AdMAgbCKq+xaOu+cjzbKTO*BzL$=Z zugCez;Fw(PrX=h0Qe`wt)aR$>SlSW(mmGURD*p*{vWqP4CGv?W>7#ijmS!hR0^<-eDIFZ9R#nRGh^sn)E&e~zO+o79kkp?j&pO45N=nY8tT(Zaoc(%SUSYE@U)$Q<$Ej-Xk?)AQNyvz z1D*~^Z&Eq-9!19+N#nl5HV&wZ*joiZw)V^kbBMhub0!In3 zd4yVw*40+RlfRfqp=uvB11@D?&1Xj1a_(T8@mDY%@C2-4(r~Y4(wMl0Nh5qMk?I>{5Xk=tI89=)0Ak25`b%VVzYe197c*y;&u>(Seoz9HMA8<_sQgGX;?`ngsf z-N^KlhJP2+_jL5ycQbvj>A%Ni;O+Jv!#<`TF!X+=?=k`pFnyB|c#!GEM&Kc)Up5{% z%=BT?{|M9H8QML{z>CHuwU29$ykK0mkm)-+dkQXQ`VK=cW%`TOUi)&Uw;BajFkNTl ztzz1AcULpLsD;;m4b#t>{%e`uVP&88 zwS@s=|5heHH^ID(>2+rO2BvqK@wYRb?ulFbSo2blh~anC`ozo8E?{ehtmGyScZ?;}j#m-PQp4S4H#gP!{z4f8^#?>5Yf znf}tWFJ*d-XDP>LtC;@K(5pA3xwLlgG6L2xgIV}%nKZsw$K>0_w)ITE zY3O>d-H6}F^e#hhX8K)2ZvjntcZUJCGQ&PYZ)19|p&OWPF!Xk&Uomte(?1ydcQO5q zp?5R=tywF3Jo}$9!Mcwb_8Nx$Ouu2;4=}yLc;q0{D@}A9V)}s$FZ>QOU28magz0;Y z{G%H<|9xRHZ|z1M0s9TZLZ(-n0Twe|Z&t@rrtdQYEN8mGto9X5zhpeLis_pS|7w?k zPmM)unBHkzwwCEFCf}`N`Z<&D)-!$BchnRlS^gqn>ou>a0rXS?~u24rASZzAgKA~gapvjmEnZDJ;#A2r3 zG6ODU`ZYr@XZon2S1^6p(5smKK-0ATRx_~7xNr^Ax0wOgGQH3!xQ^-VCQYno`aNS| zJ=34J^E|YX>BHs}wVCNvG(|3*7q&2Pv*UHx%JduNh_Q|7y@qaJ`f-!=w=?~cX>Vlu z38TO+rWcy_-Aq4^{(S!0!@zpOu#f47%mDkDUSjA2OgEST4l;eGp${>Amyvgv=}m?{ z!u0C&QkOITQ3ehhhT11}418wjg-jnYQ?Qun+f4gXrhhc_a;EFel&)ZUg$deKOgDsG z&*iHb*kl;iF#VOuWNVq;W!l#<{g7#2&-6PcChD2K!O$C-USfi9Gt*zWhG7c>3k}0o zroS`;Ze#jclL;G`e!rz>z;>qpY*KY2(~YKm7t=A1eK(UgxF%2RVc;oa&_1TuoALHD zy~W5o!1Twa{UFot8~PB_8%#_eW_p>Ce}rlG9>Z{yfuknIY7s418;wTbLZ<&^6j;pk zH>Uqmrq`JE!`fq32*we`50n>dK z)3=-MyNSm5cNt(0GrVgS**>Os7=!jR{gyG{0MiYIKFIWLGsTCPe#FQ-%=BKP&=Js- zfA2OPJ<1HX8iQ&#>k!yu=!Hx_Z0N;IC*MYwGX0TJXgSm078=1a8%agZ@={L;jWw$r}&Q2b~9%lH|blAuAPDAf! z`U%5-fa%4i{UFm{nf60WH=5(qVWzhj{v$2}_n8hynO?5)Q*ZFwse)1BhcI@ z=yIn%A!Rvnbg>oc7a3r)6=i^+e$o?vM!?K22TE`w%#!w4J zkto=L8{}crbUsC4+_m#yP`}x+0LBeOQ4Yz)4R-am^K6(vb_B>(5x!+a11f_YqroUB zw_|BcurmcYEE?z$hz_;kQz#LzhT3o|VUeNmg?`EyYFiT42FO1_3>Q$np%6yEQ!bvQ zexfDC!^OzIxl#NicR@i|N82il}`;uYQst(!3xE!KWb|B+(GO z78Q}6IRW--A4|fspW1|X>NX2(RNWmc5t2NtA}!zH9amo&s=#EFc>1Ljj^ z;jUwktj$S_xz{)dNB9XvnqMHpti7Wk9QR zRxU${*{S+To5Bh*Xh=1N`~m5#tcVPyxJe(2wlpOogSAaD3QFB%MTSKoFA{>kBJKzo zaKHv@S&1wbokJp1kx1_>$icc96%C%buC}(e-l5jBWa4Y$ZnoU z+{1$1bQIwbr+84_lS7(??Is!{&-fbaevwh6k%+{VYvrWtJ_rVy2^|g|K;~g}P*w)3 ze#FCs$S;5gu^cEFP#j>jgs|}R>B~l%27L^+=oJ*qQ?!)&h3zayh1fq~k)>R$ zHjYJsoPni=!N3Nlbd|2z69T zPpFfFoRN#SI!Z{GQ_cbe5fZhK2ONc*;J`AyU~RoaQIRD2%EPU>=xL6I<^rOb}$jreRA>c*^TCU$wp3p-6sYQ{AD{?Q zQw~ilO%SGEheR_zN?@fq0uIwsxU(+~t+RD2)EkAlg?>fIhfXIlMv%@iJ6})0XtYM{ zd}kIE@;73wq_;bMl5Nueq98_iL-6KkW9iT~0xgFjSkiJtT~;*Pwb_TlX#t}mLClKw zCZ|iw83zTl#x0OYRfk_Fq~oZlR`=A_2IpmKM=TQgkh*LulCV(ONsb$9Yxi06vMa+F zu{9>l*&P%a+TYMBat5Xn8%_>6W%@*b=1AJ?OMxL1}%0pu8m_=K#V?Q5Mkc z6c0peLL1WBfm5QhW9i8L7$qkIX&|FC$EKN%6wn-`vDaw7Kx)Ukvt&ST|LQ0FqcaUw zN-N%cWhvqkS*JAy%c1q5V=fd;J73SogjfJ^C~9B~u$6xxgR1R z60w{daza5)8l9a&sS4=*iH=J#S~cDd)j|bJqZyH&NVGJJLTakDF+L9dw;-El;_MSt zfoc_uw9g44ZlWP}CA0)w8p94or!d^$)W~=w1!9K}E!P-C2Qc5m8QR0>gMni~UWITd z%>sT{u@L4OCng$2C~F*)f)~)eV-^w>QscRpIjBrAN6(QnXjnY)^l9ZVUd)P?(DcQ` zSV+KZ;|n=EW3~#^D7T7L%z!;Kq&|X@7!Vo(*L-9=OmGzW&Y3C#$1I3gKy9_OmvCnM zxUT5rOauW<5r-6Xi@_YsG;L9O*R%B`ITY433fY_QwB!e<UW-olAVoiQ(x?u_EYmTL#;ECXY;7c~<^R+2-oNSdPXz&zccPi|Tn=nzRb zLn&{GNCq8pBQ0VAiGh|Fr6BE?NZ(k1Pv4k4@X#3%n}O3BvrXgTo09Knr=7M8u2uSh z(xZp*G=p)Tvc@{;Xok0(LRi7EDzJKxOR!L|tx!@)%u~->vsG3BwilA79uoA30Ilzg z9Ra|R+|nrClo8PvQ-&A39xMnoiOd(OkWuYCbb8OC+|qBhYFU6p0;Ti9RP3vN$zq|q z+v7~BWzv4&$+Y#9K|eckiq;)=I1%)woX&o>ebd+|6d8G<7S{><< zrDu&Mmr{s#^q?)2o`cv-5v6PJ@w)TbsUn2cniB}**?HM|hI4Ec!cGEaK6K=yVG|G= zu8(#TZQ-e(ehSQMRc#6UK36C$J)`cmoc1lFwc>hlgE*~Q_qw}=c6BFQFtKpbJm z<)TY3OH7-A-_pGNijvaVW#tuf=FY3Es-9o7;L5A6{?#?tUgy^7BU&Ju7LEq;kiC%p zs$&A$HU1&3w6w3V^1}=1lscp!hi-N$98Jd$82v5gHi&&q9l~_T-_Q%1>OWhxC~(6u zJo1TPJRD-q1M$l6Z9*;=l#1YO8YzI0wmy_Hl2F}fE(MK*0Wp&Lie@`0FZ^qCOo|LI z7xLG~3Urr0+(csTF%o@YDUzVv5+RozE9+2GQCY``I##(`NIBOS99|~mE!r==^23*4 z*wJIdL3uMB@@%+3jh@}g7UN;!r(|Lf2HUDnJ}e|X)cfStrMmm+`QaS2A&b6*3F)fR zlI%M7k>-XG^WkD;$t94`T{}**pf@GpG~~%!@vf?edS3&ei5U!i^TQY5Hab6Chyw%8 zo6ueD_Ekf}%|b2)xW5T_lOUVaM+U^95v+@Zyb0(B2G!s~Ar}FBy9s!skP88R(geIg z$QuEE+yuN{$QuB5pdtY@?KQhq;Cf-<+fn^}m$cx#1)Z%6g^c{Qsm zYr)wmh10cM@bx{0?>gx^Dl3KUI_o;H4L^p>y;ff5sO%KJYprX+H|Q9?Yvi?#>YT!M zjdcy!h91NAD|wBhdL08^Eq~R-W^Kn+@@g{9HL=9OaizSfxhV_emCY5ekqeq@IbYT^ z*Qr|0cho@WWb^Key9uuR;Y8V!1E>AgxsW5W?;|JzOcP=nWC+2k*j; ziXv|3a&}1Op?Z8`#(8KK@=x#PX^2wJ`PBO~^sb;d?s(kPGfS4$HFnE%k!h8{`8p-n zEq}y}F%x6p+}$MA(P~2vTAb|AGFk2b49Sb>wL6UpPZlL>uNno>>U26(snelR32CGk zu7)Bmu*)6QgQlIn(E718yH&8nEYR?TC)3#J#~qsvd_&N^ z*c-ahBBUK7Se&2Y)I{UtSB5W1%@N_5fO#6jGrdv095EBZR0f7E#Ope46CKqOw+l## zmd8_qQx%47gJFvtrR#cRYY~hM6j?xbpno)OngU4V|%un{-adX^wKB z(|L9GFO_(pWE(J5vL6adbk(WA3 zV#x8NHdQH`#)0aWI^f0D#gKtC)kMZr1d$3uMghqPdot>_^k^~KGl6FhM>}~@lO-3P z;?LF;Po_6pQ{+W;^*zXn0jU~Hv8F%+WT7S+TqvhFsueWICkwoZ(=>gya}UW#Ts4QFwEfqi9PF$&rrA#cc$w;*cCp zfgF;<>LR_!5Q|%S=QN(`V5#n z)4^1RWPj>6pm{&qq-juE*BCVq_98onWM7)@kUX8b4Qk$v_GVw#(PZslu=lQey;o+t zpnAt|?v@`ODMt~Gx}UAOQ9_|+_=1KU8}6mIfA|C=4QW2om%b>RGKQas53>5|>__}^ zs3*I-qdp`W&O?-h7X2!6RhiUIyOt# zill+l=iZYqf?g5)?HzU{x~MNE2c<+8$Z_;(HWjZg;4=MfsLImlxU>Q z`sW26Y$~wR2?chPXiK$?-(kWXj$=#*%-nIuR{z9su*mD%{zTfhmmN+Z;0qGaGbthS zL=rM(`xJGLqvJ`KeE4QR6}_A8J@{ZU98@XGuI1QpJBkpT(nBczE4m3s*;Ek3>v9tT zG^jwBc&~x+F64uSOklnS;akj`{ksMo!P?v6uP zDwyG@ZWs?Aa@YzrWEZy+7m-6vPMG*WTP^1kW*P*jeWW-QK2Inij6#Gy;bA1aqG?_# zT>CxTWc(*9*Y=494anfn4rZqera!#V7N!i=d@Rd7(O~p}l70=PNYE>e3U!!UDtL)` zP8B|FCBLH5iT7?4QV6bz;Xe*6myx(#B5@h7P0E!Lw z4t`ps!)~f+)Lk)jSlxX?zjk+uUE)pgj(!u@%2vm01kKjuA^mRxCY(}0rBW^v*w6@@ z9Cmv4Y(O1E27Xt_w-MoO8RXNpod=~qrStY)@h-mT$Q{5k0e}(T5%xO*uXycpZ232I zJqh=BanHmZ`hfF&eUxsWq`$yE&=fg}Q_8f;-_+ z9tg}|f_ayaI{@aSjJ}^n-z9d4H`ovVgf-n<)fN4BYI8r*=AN3Q$=uWMqGiiBAgWtZ zKHeq5JA`}+(1R*i}x{%vbjf8@Sp-E7@hA(`uN9QUs5$`ERKu-+$ zIt2B?okr=M6iBAMD&)%m`!J~I7@JnB(5vEQ{bf<>>F7$s2GjvrTTMrGnGV{56S zlAQ>DPRQpWX><~NAK$Spu|FwtvMn?CN0S;dym-~opf@VLms6cA&>n}mE?+w!5FFq~m* z4?MDINKQXBcL0F+ywNm9;y}j7lqv>u@PU^Ml>QZ*{*yN zPp|l$zenfCg?s|&b{{1_JSHUddeuii1zIoU2B5F`D817EQOL)EzV4$W;ZY$U1KOB^ zx_}=MvL5gbA11-;h5RGXH++;tJS^m+DG{&}tsd|R;sY&6Ch`yHw~JaH#>1Pwfc+5g zppXv%eal1XBR@(64{$HM&loS#B>!H>bzsH|he0Vy)(ZI`P@EnON*=#o$OnMpU~JGs zK<^Xs_dx&Vp?V&^qB#G(uHy9X_DEuQxJ9ckz_Lf#Mb?>_no(0hcWUhnznhd}QZ z@?N0(e3TTrOUN}q-}liEfUXwu9-tq1DA`X@bf=Ja1IE;Z2fko`lglo+@cHDbWSzsL5lyy zx+G1f8Uue06vgLTF~DITrFla2nd;PE`zS>(s?SuY{>DdX1)=;*mFjPOlokN$&s3>C z!l+B>hlWE1nrhYG`OKs-O3+lS#+naNHTZkKl|19>`t%PzNL{XzRER$6gQUu}y5{`f zK1kiKfk;>V=!0a+uc(^*laEnwTur582zw(N`3pnue{(5RjmLgy@nweN%Cc=jjI3hdsARs zN~8SN$0!qDA`^~U>0`80UQET$RX#>8ol3RKJA90sbCJBnQP_V&@Ny9MU$xH1NU5aHEfr0wbtQ`h<^><-@6Fit|PY#XP((=sGA4QMwS? z6*rXZp7eXrXoFm0?SQrcj@sn6Q4kEE5@07Z^`lRFba`{L&p~?irCv{Ym_AzQ_pkwd z`}Va^41F3cD5BEY3}sG7J>&N#SNEoZsf!a&h>CYxnl|>7eH`_ykI`!DK|-GMG4gdT zDun7!O|kAIZ>x`yYr4rEI4n2CPD2&YRWJA;*>oyZ`d;)gij=Oh8_vr3(;`I?WBB5g?EDUgfe=IeeFrOwt=2yOH+ilkOl6vcs97d<1mImiagqW6E&$Dso0 z8-73dvnAC^clr>G+=A++CqqO!B>GL{&2-sPpQ}SCD5*F7HhQB7$qcml7>yVt8M9)L zg^~`A*t$a3`FIsN+8G=wYJ#h}) zzTwKTEi=yW{_4`4%2AWXj2L1522(Em@ufs{w4z6}dqwwX@s%@*i)U6v@%Oe$%IB9y ztLD$0i@&8+JTtoC+Vh9mXHLJWy0|K_ppyO?Mn$w&6o23 zi0fp~#t|2So{Z~lT)S|+i)#n2eYp0v>}OdGcz6ZZ4-oJTu5Y2tNGQ7(_ldZ#fF3I$ zts6;fx$;j(MEh|u@Sg)?U&1{N*QemwiN2%YtmojYYFuaGYK!Yfw10-{19WeX`ySk% zh9jQEy=TjnUA_}NMcK-6--+zZWq@zPunQsXTwDnZ@%hTDzY|?fegc}{&sAB^2!1&cQVW<~;&z@5<-C7b7QL3)Vt(xd``>xX(eC3vn&N^>fb_u;+}*G#!-{10N;Nt-(D6}vn94}R(DwEzGB From 6bc08a4e40859a3252cc3e2c45ddd6ff4b1d8c0a Mon Sep 17 00:00:00 2001 From: Mehmet Oguz Derin Date: Mon, 2 Sep 2024 13:03:23 +0900 Subject: [PATCH 4/5] Migrate to C --- .editorconfig | 10 +- .gitattributes | 2 +- .gitignore | 1 + Cargo.toml | 5 +- Makefile | 37 +- Package.swift | 86 +- binding.gyp | 13 +- bindings/c/tree-sitter-wgsl.pc.in | 2 +- bindings/go/binding.go | 1 + bindings/go/binding_test.go | 4 +- bindings/go/go.mod | 5 - bindings/node/binding.cc | 2 +- bindings/node/binding_test.js | 9 + bindings/python/tests/test_binding.py | 11 + bindings/python/tree_sitter_wgsl/__init__.py | 41 +- bindings/python/tree_sitter_wgsl/__init__.pyi | 11 +- bindings/python/tree_sitter_wgsl/binding.c | 4 +- bindings/python/tree_sitter_wgsl/binding.cpp | 35 - bindings/rust/build.rs | 7 +- bindings/rust/lib.rs | 23 +- .../TreeSitterWgslTests.swift | 12 + go.mod | 5 + package-lock.json | 30 +- package.json | 26 +- pyproject.toml | 6 +- queries/highlights.scm | 33 +- setup.py | 24 +- src/parser.c | 137 +- src/parser.cpp | 31959 ---------------- src/{scanner.cpp => scanner.c} | 1151 +- src/tree_sitter/parser.h | 1 + tree-sitter-wgsl.wasm | Bin 135129 -> 134933 bytes 32 files changed, 948 insertions(+), 32745 deletions(-) delete mode 100644 bindings/go/go.mod create mode 100644 bindings/node/binding_test.js create mode 100644 bindings/python/tests/test_binding.py delete mode 100644 bindings/python/tree_sitter_wgsl/binding.cpp create mode 100644 bindings/swift/TreeSitterWgslTests/TreeSitterWgslTests.swift create mode 100644 go.mod delete mode 100644 src/parser.cpp rename src/{scanner.cpp => scanner.c} (53%) diff --git a/.editorconfig b/.editorconfig index d3a8b5b..f363cc5 100644 --- a/.editorconfig +++ b/.editorconfig @@ -2,9 +2,6 @@ root = true [*] charset = utf-8 -end_of_line = lf -insert_final_newline = true -trim_trailing_whitespace = true [*.{json,toml,yml,gyp}] indent_style = space @@ -14,11 +11,11 @@ indent_size = 2 indent_style = space indent_size = 2 -[*.rs] +[*.{c,cc,h}] indent_style = space indent_size = 4 -[*.{c,cc,h}] +[*.rs] indent_style = space indent_size = 4 @@ -37,3 +34,6 @@ indent_size = 8 [Makefile] indent_style = tab indent_size = 8 + +[parser.c] +indent_size = 2 diff --git a/.gitattributes b/.gitattributes index ffb52ab..4cb1058 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,4 +1,4 @@ -* text eol=lf +* text=auto eol=lf src/*.json linguist-generated src/parser.c linguist-generated diff --git a/.gitignore b/.gitignore index 7923e92..443b89e 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ node_modules/ # Swift artifacts .build/ +Package.resolved # Go artifacts go.sum diff --git a/Cargo.toml b/Cargo.toml index bf96454..6620371 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,10 @@ include = ["bindings/rust/*", "grammar.js", "queries/*", "src/*"] path = "bindings/rust/lib.rs" [dependencies] -tree-sitter = ">=0.22.6" +tree-sitter-language = "0.1" + +[dev-dependencies] +tree-sitter = { version = "0.22" } [build-dependencies] cc = "1.0.87" diff --git a/Makefile b/Makefile index 8381db7..5de5e84 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,7 @@ +ifeq ($(OS),Windows_NT) +$(error Windows is not supported) +endif + VERSION := 0.0.7 LANGUAGE_NAME := tree-sitter-wgsl @@ -17,10 +21,6 @@ endif TS ?= tree-sitter -# ABI versioning -SONAME_MAJOR := $(word 1,$(subst ., ,$(VERSION))) -SONAME_MINOR := $(word 2,$(subst ., ,$(VERSION))) - # install directory layout PREFIX ?= /usr/local INCLUDEDIR ?= $(PREFIX)/include @@ -28,36 +28,37 @@ LIBDIR ?= $(PREFIX)/lib PCLIBDIR ?= $(LIBDIR)/pkgconfig # source/object files -PARSER := $(SRC_DIR)/parser.cpp -EXTRAS := $(filter-out $(PARSER),$(wildcard $(SRC_DIR)/*.cpp)) +PARSER := $(SRC_DIR)/parser.c +EXTRAS := $(filter-out $(PARSER),$(wildcard $(SRC_DIR)/*.c)) OBJS := $(patsubst %.c,%.o,$(PARSER) $(EXTRAS)) # flags ARFLAGS ?= rcs -override CFLAGS += -I$(SRC_DIR) -std=c17 -fPIC -override CXXFLAGS += -I$(SRC_DIR) -std=c++17 -fPIC +override CFLAGS += -I$(SRC_DIR) -std=c11 -fPIC + +# ABI versioning +SONAME_MAJOR := 1 +SONAME_MINOR := 4 # OS-specific bits -ifeq ($(OS),Windows_NT) - $(error "Windows is not supported") -else ifeq ($(shell uname),Darwin) +ifeq ($(shell uname),Darwin) SOEXT = dylib - SOEXTVER_MAJOR = $(SONAME_MAJOR).dylib - SOEXTVER = $(SONAME_MAJOR).$(SONAME_MINOR).dylib + SOEXTVER_MAJOR = $(SONAME_MAJOR).$(SOEXT) + SOEXTVER = $(SONAME_MAJOR).$(SONAME_MINOR).$(SOEXT) LINKSHARED := $(LINKSHARED)-dynamiclib -Wl, ifneq ($(ADDITIONAL_LIBS),) LINKSHARED := $(LINKSHARED)$(ADDITIONAL_LIBS), endif - LINKSHARED := $(LINKSHARED)-install_name,$(LIBDIR)/lib$(LANGUAGE_NAME).$(SONAME_MAJOR).dylib,-rpath,@executable_path/../Frameworks + LINKSHARED := $(LINKSHARED)-install_name,$(LIBDIR)/lib$(LANGUAGE_NAME).$(SOEXTVER),-rpath,@executable_path/../Frameworks else SOEXT = so - SOEXTVER_MAJOR = so.$(SONAME_MAJOR) - SOEXTVER = so.$(SONAME_MAJOR).$(SONAME_MINOR) + SOEXTVER_MAJOR = $(SOEXT).$(SONAME_MAJOR) + SOEXTVER = $(SOEXT).$(SONAME_MAJOR).$(SONAME_MINOR) LINKSHARED := $(LINKSHARED)-shared -Wl, ifneq ($(ADDITIONAL_LIBS),) LINKSHARED := $(LINKSHARED)$(ADDITIONAL_LIBS) endif - LINKSHARED := $(LINKSHARED)-soname,lib$(LANGUAGE_NAME).so.$(SONAME_MAJOR) + LINKSHARED := $(LINKSHARED)-soname,lib$(LANGUAGE_NAME).$(SOEXTVER) endif ifneq ($(filter $(shell uname),FreeBSD NetBSD DragonFly),) PCLIBDIR := $(PREFIX)/libdata/pkgconfig @@ -69,7 +70,7 @@ lib$(LANGUAGE_NAME).a: $(OBJS) $(AR) $(ARFLAGS) $@ $^ lib$(LANGUAGE_NAME).$(SOEXT): $(OBJS) - $(CXX) -I$(SRC_DIR) -std=c++17 -fPIC $(LDFLAGS) $(LINKSHARED) $^ $(LDLIBS) -o $@ + $(CC) $(LDFLAGS) $(LINKSHARED) $^ $(LDLIBS) -o $@ ifneq ($(STRIP),) $(STRIP) $@ endif diff --git a/Package.swift b/Package.swift index f9585b8..8d3f747 100644 --- a/Package.swift +++ b/Package.swift @@ -6,42 +6,56 @@ let package = Package( products: [ .library(name: "TreeSitterWgsl", targets: ["TreeSitterWgsl"]), ], - dependencies: [], + dependencies: [ + .package(url: "https://github.com/ChimeHQ/SwiftTreeSitter", from: "0.8.0"), + ], targets: [ - .target(name: "TreeSitterWgsl", - 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.cpp", - "src/scanner.cpp", - ], - resources: [ - .copy("queries") - ], - publicHeadersPath: "bindings/swift", - cxxSettings: [.headerSearchPath("src")]), + .target( + name: "TreeSitterWgsl", + dependencies: [], + 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. + "src/scanner.c", + ], + resources: [ + .copy("queries") + ], + publicHeadersPath: "bindings/swift", + cSettings: [.headerSearchPath("src")] + ), + .testTarget( + name: "TreeSitterWgslTests", + dependencies: [ + "SwiftTreeSitter", + "TreeSitterWgsl", + ], + path: "bindings/swift/TreeSitterWgslTests" + ) ], - cxxLanguageStandard: .cxx17 + cLanguageStandard: .c11 ) diff --git a/binding.gyp b/binding.gyp index 86423d2..ecb5f6a 100644 --- a/binding.gyp +++ b/binding.gyp @@ -10,17 +10,18 @@ ], "sources": [ "bindings/node/binding.cc", - "src/parser.cpp", - "src/scanner.cpp", + "src/parser.c", + # NOTE: if your language has an external scanner, add it here. + "src/scanner.c", ], "conditions": [ ["OS!='win'", { - "cflags_cc": [ - "-std=c++17", + "cflags_c": [ + "-std=c11", ], }, { # OS == "win" - "cflags_cc": [ - "/std:c++17", + "cflags_c": [ + "/std:c11", "/utf-8", ], }], diff --git a/bindings/c/tree-sitter-wgsl.pc.in b/bindings/c/tree-sitter-wgsl.pc.in index 4cbf674..0d77f3e 100644 --- a/bindings/c/tree-sitter-wgsl.pc.in +++ b/bindings/c/tree-sitter-wgsl.pc.in @@ -3,7 +3,7 @@ libdir=@LIBDIR@ includedir=@INCLUDEDIR@ Name: tree-sitter-wgsl -Description: Wgsl grammar for tree-sitter +Description: WGSL grammar for tree-sitter URL: @URL@ Version: @VERSION@ Requires: @REQUIRES@ diff --git a/bindings/go/binding.go b/bindings/go/binding.go index b750fe2..de880e8 100644 --- a/bindings/go/binding.go +++ b/bindings/go/binding.go @@ -3,6 +3,7 @@ package tree_sitter_wgsl // #cgo CFLAGS: -std=c11 -fPIC // #include "../../src/parser.c" // // NOTE: if your language has an external scanner, add it here. +// #include "../../src/scanner.c" import "C" import "unsafe" diff --git a/bindings/go/binding_test.go b/bindings/go/binding_test.go index e8c8642..a4ea634 100644 --- a/bindings/go/binding_test.go +++ b/bindings/go/binding_test.go @@ -3,8 +3,8 @@ package tree_sitter_wgsl_test import ( "testing" - tree_sitter "github.com/smacker/go-tree-sitter" - "github.com/tree-sitter/tree-sitter-wgsl" + tree_sitter "github.com/tree-sitter/go-tree-sitter" + tree_sitter_wgsl "github.com/gpuweb/tree-sitter-wgsl/bindings/go" ) func TestCanLoadGrammar(t *testing.T) { diff --git a/bindings/go/go.mod b/bindings/go/go.mod deleted file mode 100644 index 530a8b2..0000000 --- a/bindings/go/go.mod +++ /dev/null @@ -1,5 +0,0 @@ -module github.com/tree-sitter/tree-sitter-wgsl - -go 1.22 - -require github.com/smacker/go-tree-sitter v0.0.0-20230720070738-0d0a9f78d8f8 diff --git a/bindings/node/binding.cc b/bindings/node/binding.cc index 8e07cf2..d5f55d7 100644 --- a/bindings/node/binding.cc +++ b/bindings/node/binding.cc @@ -6,7 +6,7 @@ extern "C" TSLanguage *tree_sitter_wgsl(); // "tree-sitter", "language" hashed with BLAKE2 const napi_type_tag LANGUAGE_TYPE_TAG = { - 0x8AF2E5212AD58ABF, 0xD5006CAD83ABBA16 + 0x8AF2E5212AD58ABF, 0xD5006CAD83ABBA16 }; Napi::Object Init(Napi::Env env, Napi::Object exports) { diff --git a/bindings/node/binding_test.js b/bindings/node/binding_test.js new file mode 100644 index 0000000..afede30 --- /dev/null +++ b/bindings/node/binding_test.js @@ -0,0 +1,9 @@ +/// + +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("."))); +}); diff --git a/bindings/python/tests/test_binding.py b/bindings/python/tests/test_binding.py new file mode 100644 index 0000000..9ec649d --- /dev/null +++ b/bindings/python/tests/test_binding.py @@ -0,0 +1,11 @@ +from unittest import TestCase + +import tree_sitter, tree_sitter_wgsl + + +class TestLanguage(TestCase): + def test_can_load_grammar(self): + try: + tree_sitter.Language(tree_sitter_wgsl.language()) + except Exception: + self.fail("Error loading WGSL grammar") diff --git a/bindings/python/tree_sitter_wgsl/__init__.py b/bindings/python/tree_sitter_wgsl/__init__.py index 8f62d08..a6294b3 100644 --- a/bindings/python/tree_sitter_wgsl/__init__.py +++ b/bindings/python/tree_sitter_wgsl/__init__.py @@ -1,5 +1,42 @@ -"Wgsl grammar for tree-sitter" +"""WGSL grammar for tree-sitter""" + +from importlib.resources import files as _files from ._binding import language -__all__ = ["language"] + +def _get_query(name, file): + query = _files(f"{__package__}.queries") / file + globals()[name] = query.read_text() + return globals()[name] + + +def __getattr__(name): + # NOTE: uncomment these to include any queries that this grammar contains: + + # if name == "HIGHLIGHTS_QUERY": + # return _get_query("HIGHLIGHTS_QUERY", "highlights.scm") + # if name == "INJECTIONS_QUERY": + # return _get_query("INJECTIONS_QUERY", "injections.scm") + # if name == "LOCALS_QUERY": + # return _get_query("LOCALS_QUERY", "locals.scm") + # if name == "TAGS_QUERY": + # return _get_query("TAGS_QUERY", "tags.scm") + + raise AttributeError(f"module {__name__!r} has no attribute {name!r}") + + +__all__ = [ + "language", + # "HIGHLIGHTS_QUERY", + # "INJECTIONS_QUERY", + # "LOCALS_QUERY", + # "TAGS_QUERY", +] + + +def __dir__(): + return sorted(__all__ + [ + "__all__", "__builtins__", "__cached__", "__doc__", "__file__", + "__loader__", "__name__", "__package__", "__path__", "__spec__", + ]) diff --git a/bindings/python/tree_sitter_wgsl/__init__.pyi b/bindings/python/tree_sitter_wgsl/__init__.pyi index 5416666..abf6633 100644 --- a/bindings/python/tree_sitter_wgsl/__init__.pyi +++ b/bindings/python/tree_sitter_wgsl/__init__.pyi @@ -1 +1,10 @@ -def language() -> int: ... +from typing import Final + +# NOTE: uncomment these to include any queries that this grammar contains: + +# HIGHLIGHTS_QUERY: Final[str] +# INJECTIONS_QUERY: Final[str] +# LOCALS_QUERY: Final[str] +# TAGS_QUERY: Final[str] + +def language() -> object: ... diff --git a/bindings/python/tree_sitter_wgsl/binding.c b/bindings/python/tree_sitter_wgsl/binding.c index 3b0d4f2..e3d606d 100644 --- a/bindings/python/tree_sitter_wgsl/binding.c +++ b/bindings/python/tree_sitter_wgsl/binding.c @@ -4,8 +4,8 @@ typedef struct TSLanguage TSLanguage; TSLanguage *tree_sitter_wgsl(void); -static PyObject* _binding_language(PyObject *self, PyObject *args) { - return PyLong_FromVoidPtr(tree_sitter_wgsl()); +static PyObject* _binding_language(PyObject *Py_UNUSED(self), PyObject *Py_UNUSED(args)) { + return PyCapsule_New(tree_sitter_wgsl(), "tree_sitter.Language", NULL); } static PyMethodDef methods[] = { diff --git a/bindings/python/tree_sitter_wgsl/binding.cpp b/bindings/python/tree_sitter_wgsl/binding.cpp deleted file mode 100644 index 8797de2..0000000 --- a/bindings/python/tree_sitter_wgsl/binding.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct TSLanguage TSLanguage; - -TSLanguage *tree_sitter_wgsl(void); - -static PyObject* _binding_language(PyObject *self, PyObject *args) { - return PyLong_FromVoidPtr(tree_sitter_wgsl()); -} - -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); -} - -#ifdef __cplusplus -} -#endif diff --git a/bindings/rust/build.rs b/bindings/rust/build.rs index 719433d..7943c17 100644 --- a/bindings/rust/build.rs +++ b/bindings/rust/build.rs @@ -2,16 +2,17 @@ fn main() { let src_dir = std::path::Path::new("src"); let mut c_config = cc::Build::new(); - c_config.std("c++17").include(src_dir); + c_config.std("c11").include(src_dir); #[cfg(target_env = "msvc")] c_config.flag("-utf-8"); - let parser_path = src_dir.join("parser.cpp"); + let parser_path = src_dir.join("parser.c"); c_config.file(&parser_path); println!("cargo:rerun-if-changed={}", parser_path.to_str().unwrap()); - let scanner_path = src_dir.join("scanner.cpp"); + // NOTE: if your language uses an external scanner, uncomment this block: + let scanner_path = src_dir.join("scanner.c"); c_config.file(&scanner_path); println!("cargo:rerun-if-changed={}", scanner_path.to_str().unwrap()); diff --git a/bindings/rust/lib.rs b/bindings/rust/lib.rs index 1702c91..f825209 100644 --- a/bindings/rust/lib.rs +++ b/bindings/rust/lib.rs @@ -7,7 +7,10 @@ //! let code = r#" //! "#; //! let mut parser = tree_sitter::Parser::new(); -//! parser.set_language(&tree_sitter_wgsl::language()).expect("Error loading Wgsl grammar"); +//! let language = tree_sitter_wgsl::LANGUAGE; +//! parser +//! .set_language(&language.into()) +//! .expect("Error loading WGSL parser"); //! let tree = parser.parse(code, None).unwrap(); //! assert!(!tree.root_node().has_error()); //! ``` @@ -17,25 +20,21 @@ //! [Parser]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Parser.html //! [tree-sitter]: https://tree-sitter.github.io/ -use tree_sitter::Language; +use tree_sitter_language::LanguageFn; extern "C" { - fn tree_sitter_wgsl() -> Language; + fn tree_sitter_wgsl() -> *const (); } -/// Get the tree-sitter [Language][] for this grammar. -/// -/// [Language]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Language.html -pub fn language() -> Language { - unsafe { tree_sitter_wgsl() } -} +/// The tree-sitter [`LanguageFn`] for this grammar. +pub const LANGUAGE: LanguageFn = unsafe { LanguageFn::from_raw(tree_sitter_wgsl) }; /// 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"); -// Uncomment these to include any queries that this grammar contains +// 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"); @@ -48,7 +47,7 @@ mod tests { fn test_can_load_grammar() { let mut parser = tree_sitter::Parser::new(); parser - .set_language(&super::language()) - .expect("Error loading Wgsl grammar"); + .set_language(&super::LANGUAGE.into()) + .expect("Error loading Wgsl parser"); } } diff --git a/bindings/swift/TreeSitterWgslTests/TreeSitterWgslTests.swift b/bindings/swift/TreeSitterWgslTests/TreeSitterWgslTests.swift new file mode 100644 index 0000000..6d6d68a --- /dev/null +++ b/bindings/swift/TreeSitterWgslTests/TreeSitterWgslTests.swift @@ -0,0 +1,12 @@ +import XCTest +import SwiftTreeSitter +import TreeSitterWgsl + +final class TreeSitterWgslTests: XCTestCase { + func testCanLoadGrammar() throws { + let parser = Parser() + let language = Language(language: tree_sitter_wgsl()) + XCTAssertNoThrow(try parser.setLanguage(language), + "Error loading WGSL grammar") + } +} diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..f8290eb --- /dev/null +++ b/go.mod @@ -0,0 +1,5 @@ +module github.com/gpuweb/tree-sitter-wgsl + +go 1.23 + +require github.com/tree-sitter/go-tree-sitter v0.23 diff --git a/package-lock.json b/package-lock.json index 74020d6..ca31f0d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,15 +10,15 @@ "hasInstallScript": true, "license": "BSD-3-Clause", "dependencies": { - "node-addon-api": "^7.1.0", - "node-gyp-build": "^4.8.0" + "node-addon-api": "^8.0.0", + "node-gyp-build": "^4.8.1" }, "devDependencies": { - "prebuildify": "^6.0.0", - "tree-sitter-cli": "^0.22.6" + "prebuildify": "^6.0.1", + "tree-sitter-cli": "^0.23.0" }, "peerDependencies": { - "tree-sitter": "^0.21.0" + "tree-sitter": "^0.21.1" }, "peerDependenciesMeta": { "tree-sitter": { @@ -156,9 +156,13 @@ } }, "node_modules/node-addon-api": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", - "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==" + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-8.1.0.tgz", + "integrity": "sha512-yBY+qqWSv3dWKGODD6OGE6GnTX7Q2r+4+DfpqxHSHh8x0B4EKP9+wVGLS6U/AM1vxSNNmUEuIV5EGhYwPpfOwQ==", + "license": "MIT", + "engines": { + "node": "^18 || ^20 || >= 21" + } }, "node_modules/node-gyp-build": { "version": "4.8.1", @@ -311,13 +315,17 @@ } }, "node_modules/tree-sitter-cli": { - "version": "0.22.6", - "resolved": "https://registry.npmjs.org/tree-sitter-cli/-/tree-sitter-cli-0.22.6.tgz", - "integrity": "sha512-s7mYOJXi8sIFkt/nLJSqlYZP96VmKTc3BAwIX0rrrlRxWjWuCwixFqwzxWZBQz4R8Hx01iP7z3cT3ih58BUmZQ==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/tree-sitter-cli/-/tree-sitter-cli-0.23.0.tgz", + "integrity": "sha512-/DdQaPCCOrOYGp9FxGdhFUnHIrjhfbYatQXgNIcmaAOpPunpnDj2vsO/H+svsfQLaFsQ1C+BjgPhpbV28zka1w==", "dev": true, "hasInstallScript": true, + "license": "MIT", "bin": { "tree-sitter": "cli.js" + }, + "engines": { + "node": ">=12.0.0" } }, "node_modules/util-deprecate": { diff --git a/package.json b/package.json index a077532..bc864f3 100644 --- a/package.json +++ b/package.json @@ -18,18 +18,19 @@ "prebuilds/**", "bindings/node/*", "queries/*", - "src/**" + "src/**", + "*.wasm" ], "dependencies": { - "node-addon-api": "^7.1.0", - "node-gyp-build": "^4.8.0" + "node-addon-api": "^8.0.0", + "node-gyp-build": "^4.8.1" }, "devDependencies": { - "prebuildify": "^6.0.0", - "tree-sitter-cli": "^0.22.6" + "prebuildify": "^6.0.1", + "tree-sitter-cli": "^0.23.0" }, "peerDependencies": { - "tree-sitter": "^0.21.0" + "tree-sitter": "^0.21.1" }, "peerDependenciesMeta": { "tree-sitter": { @@ -38,19 +39,18 @@ }, "scripts": { "install": "node-gyp-build", - "prebuildify": "prebuildify --napi --strip", - "build": "tree-sitter generate --no-bindings", - "build-wasm": "tree-sitter build --wasm", - "test": "tree-sitter test", - "parse": "tree-sitter parse" + "prestart": "tree-sitter build --wasm", + "start": "tree-sitter playground", + "test": "node --test bindings/node/*_test.js" }, "tree-sitter": [ { "scope": "source.wgsl", - "filetypes": [ + "file-types": [ "wgsl" ], - "injection-regex": "^wgsl$" + "injection-regex": "^wgsl$", + "highlights": "queries/highlights.scm" } ] } diff --git a/pyproject.toml b/pyproject.toml index aeefeba..5bd284e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,7 +14,7 @@ classifiers = [ "Topic :: Text Processing :: Linguistic", "Typing :: Typed" ] -requires-python = ">=3.8" +requires-python = ">=3.9" license.text = "BSD-3-Clause" readme = "README.md" @@ -22,8 +22,8 @@ readme = "README.md" Homepage = "https://github.com/gpuweb/tree-sitter-wgsl" [project.optional-dependencies] -core = ["tree-sitter~=0.21"] +core = ["tree-sitter~=0.22"] [tool.cibuildwheel] -build = "cp38-*" +build = "cp39-*" build-frontend = "build" diff --git a/queries/highlights.scm b/queries/highlights.scm index e23351c..eacd33b 100644 --- a/queries/highlights.scm +++ b/queries/highlights.scm @@ -4,22 +4,24 @@ ; Functions (function_decl - name: (ident) @function) + (function_header + (ident) @function)) (call_expression - function: (template_elaborated_ident) @function) + (call_phrase + (template_elaborated_ident) @function)) ; Variables and parameters (param - name: (ident) @variable.parameter) + (ident) @variable.parameter) (variable_decl - name: (optionally_typed_ident (ident) @variable)) + (optionally_typed_ident (ident) @variable)) (const_assert_statement) @variable ; Struct and struct members (struct_decl - name: (ident) @type) + (ident) @type) (struct_member - name: (member_ident) @property) + (member_ident) @property) ; Attributes (attribute) @attribute @@ -29,13 +31,11 @@ (int_literal) @number (float_literal) @float -; Comments -(_comment) @comment - ; Keywords and storage classes (global_variable_decl (variable_decl - (ident_pattern_token) @keyword.storage)) + (optionally_typed_ident + (ident) @variable))) ; Control flow "if" @keyword.control @@ -47,7 +47,6 @@ "case" @keyword.control "default" @keyword.control "break" @keyword.control -"continue" @keyword.control "return" @keyword.control "discard" @keyword.control @@ -56,18 +55,6 @@ (global_value_decl) @keyword (variable_decl) @keyword -; Expressions -(unary_expression - operator: _ @operator) -(multiplicative_expression - operator: _ @operator) -(additive_expression - operator: _ @operator) -(relational_expression - operator: _ @operator) -(assignment_statement - operator: _ @operator.assignment) - ; Punctuation "(" @punctuation.bracket ")" @punctuation.bracket diff --git a/setup.py b/setup.py index 108e5ec..ab568ba 100644 --- a/setup.py +++ b/setup.py @@ -5,10 +5,9 @@ from setuptools.command.build import build from wheel.bdist_wheel import bdist_wheel + class Build(build): def run(self): - dest = join(self.build_lib, "tree_sitter_wgsl", "src") - self.copy_tree("src", dest) if isdir("queries"): dest = join(self.build_lib, "tree_sitter_wgsl", "queries") self.copy_tree("queries", dest) @@ -19,7 +18,7 @@ class BdistWheel(bdist_wheel): def get_tag(self): python, abi, platform = super().get_tag() if python.startswith("cp"): - python, abi = "cp38", "abi3" + python, abi = "cp39", "abi3" return python, abi, platform @@ -35,21 +34,24 @@ def get_tag(self): Extension( name="_binding", sources=[ - "bindings/python/tree_sitter_wgsl/binding.cpp", - "src/parser.cpp", - "src/scanner.cpp", + "bindings/python/tree_sitter_wgsl/binding.c", + "src/parser.c", + # NOTE: if your language uses an external scanner, add it here. + "src/scanner.c", ], extra_compile_args=[ - "-std=c++17", + "-std=c11", + "-fvisibility=hidden", ] if system() != "Windows" else [ - "/std:c++17", + "/std:c11", "/utf-8", ], define_macros=[ - ("Py_LIMITED_API", "0x03080000"), - ("PY_SSIZE_T_CLEAN", None) + ("Py_LIMITED_API", "0x03090000"), + ("PY_SSIZE_T_CLEAN", None), + ("TREE_SITTER_HIDE_SYMBOLS", None), ], - include_dirs=["src", "src/tree_sitter"], + include_dirs=["src"], py_limited_api=True, ) ], diff --git a/src/parser.c b/src/parser.c index 9f4d973..5618cad 100644 --- a/src/parser.c +++ b/src/parser.c @@ -2708,29 +2708,31 @@ static TSCharacterRange sym_ident_pattern_token_character_set_1[] = { {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10e80, 0x10ea9}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f45}, {0x10f70, 0x10f81}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11003, 0x11037}, {0x11071, 0x11072}, {0x11075, 0x11075}, {0x11083, 0x110af}, {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, - {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, - {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, - {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, - {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a}, - {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192f}, - {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32}, - {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40}, - {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, - {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342e}, - {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, - {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, - {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b150, 0x1b152}, {0x1b164, 0x1b167}, - {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, - {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, - {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, - {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, - {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ad}, - {0x1e2c0, 0x1e2eb}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, - {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, - {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, - {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, - {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, - {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b738}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, + {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x1123f, 0x11240}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, + {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, + {0x11335, 0x11339}, {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, + {0x114c4, 0x114c5}, {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, + {0x11700, 0x1171a}, {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, + {0x11918, 0x1192f}, {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, + {0x11a0b, 0x11a32}, {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, + {0x11c40, 0x11c40}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, + {0x11d6a, 0x11d89}, {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11f02, 0x11f02}, {0x11f04, 0x11f10}, {0x11f12, 0x11f33}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, + {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342f}, {0x13441, 0x13446}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, + {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, + {0x16f50, 0x16f50}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, + {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, + {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, + {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, + {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, + {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, + {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e030, 0x1e06d}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, + {0x1e290, 0x1e2ad}, {0x1e2c0, 0x1e2eb}, {0x1e4d0, 0x1e4eb}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, + {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, + {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, + {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, + {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, + {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, + {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, }; static TSCharacterRange sym_ident_pattern_token_character_set_2[] = { @@ -2753,11 +2755,11 @@ static TSCharacterRange sym_ident_pattern_token_character_set_2[] = { {0xbc6, 0xbc8}, {0xbca, 0xbcd}, {0xbd0, 0xbd0}, {0xbd7, 0xbd7}, {0xbe6, 0xbef}, {0xc00, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3c, 0xc44}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc63}, {0xc66, 0xc6f}, {0xc80, 0xc83}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbc, 0xcc4}, - {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, {0xcdd, 0xcde}, {0xce0, 0xce3}, {0xce6, 0xcef}, {0xcf1, 0xcf2}, {0xd00, 0xd0c}, + {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, {0xcdd, 0xcde}, {0xce0, 0xce3}, {0xce6, 0xcef}, {0xcf1, 0xcf3}, {0xd00, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd44}, {0xd46, 0xd48}, {0xd4a, 0xd4e}, {0xd54, 0xd57}, {0xd5f, 0xd63}, {0xd66, 0xd6f}, {0xd7a, 0xd7f}, {0xd81, 0xd83}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xdca, 0xdca}, {0xdcf, 0xdd4}, {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xde6, 0xdef}, {0xdf2, 0xdf3}, {0xe01, 0xe3a}, {0xe40, 0xe4e}, {0xe50, 0xe59}, {0xe81, 0xe82}, - {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xec8, 0xecd}, + {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xec8, 0xece}, {0xed0, 0xed9}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf18, 0xf19}, {0xf20, 0xf29}, {0xf35, 0xf35}, {0xf37, 0xf37}, {0xf39, 0xf39}, {0xf3e, 0xf47}, {0xf49, 0xf6c}, {0xf71, 0xf84}, {0xf86, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x1000, 0x1049}, {0x1050, 0x109d}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, @@ -2771,13 +2773,13 @@ static TSCharacterRange sym_ident_pattern_token_character_set_2[] = { {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2}, {0x1cd4, 0x1cfa}, {0x1d00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, - {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x203f, 0x2040}, {0x2054, 0x2054}, {0x2071, 0x2071}, {0x207f, 0x207f}, - {0x2090, 0x209c}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, {0x20e5, 0x20f0}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, - {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, - {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, - {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, - {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, {0x3099, 0x309a}, - {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, + {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x200c, 0x200d}, {0x203f, 0x2040}, {0x2054, 0x2054}, {0x2071, 0x2071}, + {0x207f, 0x207f}, {0x2090, 0x209c}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, {0x20e5, 0x20f0}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, + {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, + {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, + {0x2d6f, 0x2d6f}, {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, + {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, + {0x3099, 0x309a}, {0x309d, 0x309f}, {0x30a1, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, {0xa67f, 0xa6f1}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, {0xa7f2, 0xa827}, {0xa82c, 0xa82c}, {0xa840, 0xa873}, {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, {0xa8e0, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, {0xa980, 0xa9c0}, @@ -2787,7 +2789,7 @@ static TSCharacterRange sym_ident_pattern_token_character_set_2[] = { {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe00, 0xfe0f}, {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, - {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff3f, 0xff3f}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7}, + {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff3f, 0xff3f}, {0xff41, 0xff5a}, {0xff65, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x101fd, 0x101fd}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x102e0, 0x102e0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104a0, 0x104a9}, @@ -2797,10 +2799,10 @@ static TSCharacterRange sym_ident_pattern_token_character_set_2[] = { {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, - {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, {0x10e80, 0x10ea9}, {0x10eab, 0x10eac}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, + {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, {0x10e80, 0x10ea9}, {0x10eab, 0x10eac}, {0x10eb0, 0x10eb1}, {0x10efd, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f50}, {0x10f70, 0x10f85}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11000, 0x11046}, {0x11066, 0x11075}, {0x1107f, 0x110ba}, {0x110c2, 0x110c2}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, {0x11100, 0x11134}, {0x11136, 0x1113f}, {0x11144, 0x11147}, {0x11150, 0x11173}, {0x11176, 0x11176}, - {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111ce, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x11237}, {0x1123e, 0x1123e}, {0x11280, 0x11286}, + {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111ce, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x11237}, {0x1123e, 0x11241}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, {0x11350, 0x11350}, {0x11357, 0x11357}, {0x1135d, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11400, 0x1144a}, {0x11450, 0x11459}, {0x1145e, 0x11461}, @@ -2810,26 +2812,27 @@ static TSCharacterRange sym_ident_pattern_token_character_set_2[] = { {0x11950, 0x11959}, {0x119a0, 0x119a7}, {0x119aa, 0x119d7}, {0x119da, 0x119e1}, {0x119e3, 0x119e4}, {0x11a00, 0x11a3e}, {0x11a47, 0x11a47}, {0x11a50, 0x11a99}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7}, {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3a, 0x11d3a}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}, - {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef6}, {0x11fb0, 0x11fb0}, - {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, - {0x16a60, 0x16a69}, {0x16a70, 0x16abe}, {0x16ac0, 0x16ac9}, {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, {0x16b50, 0x16b59}, - {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f4f, 0x16f87}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe4}, - {0x16ff0, 0x16ff1}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, - {0x1b150, 0x1b152}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e}, - {0x1cf00, 0x1cf2d}, {0x1cf30, 0x1cf46}, {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, - {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, - {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, - {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, - {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, - {0x1da3b, 0x1da6c}, {0x1da75, 0x1da75}, {0x1da84, 0x1da84}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1df00, 0x1df1e}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, - {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e100, 0x1e12c}, {0x1e130, 0x1e13d}, {0x1e140, 0x1e149}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ae}, - {0x1e2c0, 0x1e2f9}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94b}, - {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, - {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, - {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, - {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, - {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1fbf0, 0x1fbf9}, {0x20000, 0x2a6df}, {0x2a700, 0x2b738}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, - {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0xe0100, 0xe01ef}, + {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef6}, {0x11f00, 0x11f10}, + {0x11f12, 0x11f3a}, {0x11f3e, 0x11f42}, {0x11f50, 0x11f59}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, + {0x13000, 0x1342f}, {0x13440, 0x13455}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a60, 0x16a69}, {0x16a70, 0x16abe}, {0x16ac0, 0x16ac9}, + {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, {0x16b50, 0x16b59}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, + {0x16f00, 0x16f4a}, {0x16f4f, 0x16f87}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe4}, {0x16ff0, 0x16ff1}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, + {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, + {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e}, {0x1cf00, 0x1cf2d}, + {0x1cf30, 0x1cf46}, {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1d400, 0x1d454}, + {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, + {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, + {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, + {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, {0x1da3b, 0x1da6c}, + {0x1da75, 0x1da75}, {0x1da84, 0x1da84}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, + {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e030, 0x1e06d}, {0x1e08f, 0x1e08f}, {0x1e100, 0x1e12c}, {0x1e130, 0x1e13d}, {0x1e140, 0x1e149}, + {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ae}, {0x1e2c0, 0x1e2f9}, {0x1e4d0, 0x1e4f9}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, + {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94b}, {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, + {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, + {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, + {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, + {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1fbf0, 0x1fbf9}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, + {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, {0xe0100, 0xe01ef}, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -2877,7 +2880,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead == 0x200f || lookahead == 0x2028 || lookahead == 0x2029) ADVANCE(115); - if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_1, 668, lookahead)) ADVANCE(113); END_STATE(); case 1: ADVANCE_MAP( @@ -2941,7 +2944,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead == 0x200f || lookahead == 0x2028 || lookahead == 0x2029) ADVANCE(115); - if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_1, 668, lookahead)) ADVANCE(113); END_STATE(); case 3: ADVANCE_MAP( @@ -3071,7 +3074,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); END_STATE(); case 30: - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 776, lookahead)) ADVANCE(113); END_STATE(); case 31: if (eof) ADVANCE(32); @@ -3108,7 +3111,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead == 0x200f || lookahead == 0x2028 || lookahead == 0x2029) ADVANCE(115); - if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_1, 668, lookahead)) ADVANCE(113); END_STATE(); case 32: ACCEPT_TOKEN(ts_builtin_sym_end); @@ -3386,7 +3389,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 95: ACCEPT_TOKEN(anon_sym__); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 776, lookahead)) ADVANCE(113); END_STATE(); case 96: ACCEPT_TOKEN(anon_sym_PLUS_EQ); @@ -3427,7 +3430,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead == 'b' || lookahead == 'g' || lookahead == 'r') ADVANCE(113); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 776, lookahead)) ADVANCE(113); END_STATE(); case 108: ACCEPT_TOKEN(sym_ident_pattern_token); @@ -3435,7 +3438,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead == 'b' || lookahead == 'g' || lookahead == 'r') ADVANCE(107); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 776, lookahead)) ADVANCE(113); END_STATE(); case 109: ACCEPT_TOKEN(sym_ident_pattern_token); @@ -3443,26 +3446,26 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead == 'b' || lookahead == 'g' || lookahead == 'r') ADVANCE(108); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 776, lookahead)) ADVANCE(113); END_STATE(); case 110: ACCEPT_TOKEN(sym_ident_pattern_token); if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(113); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 776, lookahead)) ADVANCE(113); END_STATE(); case 111: ACCEPT_TOKEN(sym_ident_pattern_token); if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(110); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 776, lookahead)) ADVANCE(113); END_STATE(); case 112: ACCEPT_TOKEN(sym_ident_pattern_token); if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(111); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 776, lookahead)) ADVANCE(113); END_STATE(); case 113: ACCEPT_TOKEN(sym_ident_pattern_token); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); + if (set_contains(sym_ident_pattern_token_character_set_2, 776, lookahead)) ADVANCE(113); END_STATE(); case 114: ACCEPT_TOKEN(sym__comment); diff --git a/src/parser.cpp b/src/parser.cpp deleted file mode 100644 index 9f4d973..0000000 --- a/src/parser.cpp +++ /dev/null @@ -1,31959 +0,0 @@ -#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 896 -#define LARGE_STATE_COUNT 17 -#define SYMBOL_COUNT 245 -#define ALIAS_COUNT 0 -#define TOKEN_COUNT 115 -#define EXTERNAL_TOKEN_COUNT 13 -#define FIELD_COUNT 0 -#define MAX_ALIAS_SEQUENCE_LENGTH 10 -#define PRODUCTION_ID_COUNT 1 - -enum ts_symbol_identifiers { - sym_ident_pattern_token = 1, - anon_sym_SEMI = 2, - anon_sym_true = 3, - anon_sym_false = 4, - aux_sym_decimal_int_literal_token1 = 5, - aux_sym_decimal_int_literal_token2 = 6, - sym_hex_int_literal = 7, - aux_sym_decimal_float_literal_token1 = 8, - aux_sym_decimal_float_literal_token2 = 9, - aux_sym_decimal_float_literal_token3 = 10, - aux_sym_decimal_float_literal_token4 = 11, - aux_sym_decimal_float_literal_token5 = 12, - aux_sym_hex_float_literal_token1 = 13, - aux_sym_hex_float_literal_token2 = 14, - aux_sym_hex_float_literal_token3 = 15, - anon_sym_diagnostic = 16, - anon_sym_DOT = 17, - anon_sym_COMMA = 18, - anon_sym_AT = 19, - anon_sym_align = 20, - anon_sym_LPAREN = 21, - anon_sym_RPAREN = 22, - anon_sym_binding = 23, - anon_sym_blend_src = 24, - anon_sym_builtin = 25, - anon_sym_const = 26, - anon_sym_group = 27, - anon_sym_id = 28, - anon_sym_interpolate = 29, - anon_sym_invariant = 30, - anon_sym_location = 31, - anon_sym_must_use = 32, - anon_sym_size = 33, - anon_sym_workgroup_size = 34, - anon_sym_vertex = 35, - anon_sym_fragment = 36, - anon_sym_compute = 37, - anon_sym_struct = 38, - anon_sym_LBRACE = 39, - anon_sym_RBRACE = 40, - anon_sym_COLON = 41, - anon_sym_alias = 42, - anon_sym_EQ = 43, - anon_sym_let = 44, - anon_sym_var = 45, - anon_sym_override = 46, - anon_sym_LBRACK = 47, - anon_sym_RBRACK = 48, - anon_sym_DASH = 49, - anon_sym_BANG = 50, - anon_sym_TILDE = 51, - anon_sym_STAR = 52, - anon_sym_AMP = 53, - anon_sym_SLASH = 54, - anon_sym_PERCENT = 55, - anon_sym_PLUS = 56, - anon_sym_EQ_EQ = 57, - anon_sym_BANG_EQ = 58, - anon_sym_AMP_AMP = 59, - anon_sym_PIPE_PIPE = 60, - anon_sym_PIPE = 61, - anon_sym_CARET = 62, - anon_sym__ = 63, - anon_sym_PLUS_EQ = 64, - anon_sym_DASH_EQ = 65, - anon_sym_STAR_EQ = 66, - anon_sym_SLASH_EQ = 67, - anon_sym_PERCENT_EQ = 68, - anon_sym_AMP_EQ = 69, - anon_sym_PIPE_EQ = 70, - anon_sym_CARET_EQ = 71, - anon_sym_PLUS_PLUS = 72, - anon_sym_DASH_DASH = 73, - anon_sym_if = 74, - anon_sym_else = 75, - anon_sym_switch = 76, - anon_sym_case = 77, - anon_sym_default = 78, - anon_sym_loop = 79, - anon_sym_for = 80, - anon_sym_while = 81, - anon_sym_break = 82, - sym_continue_statement = 83, - anon_sym_continuing = 84, - anon_sym_return = 85, - anon_sym_const_assert = 86, - anon_sym_discard = 87, - anon_sym_fn = 88, - anon_sym_DASH_GT = 89, - anon_sym_enable = 90, - anon_sym_requires = 91, - aux_sym_swizzle_name_token1 = 92, - aux_sym_swizzle_name_token2 = 93, - aux_sym_swizzle_name_token3 = 94, - aux_sym_swizzle_name_token4 = 95, - aux_sym_swizzle_name_token5 = 96, - aux_sym_swizzle_name_token6 = 97, - aux_sym_swizzle_name_token7 = 98, - aux_sym_swizzle_name_token8 = 99, - sym__comment = 100, - sym__blankspace = 101, - sym__block_comment = 102, - sym__disambiguate_template = 103, - sym__template_args_start = 104, - sym__template_args_end = 105, - sym__less_than = 106, - sym__less_than_equal = 107, - sym__shift_left = 108, - sym__shift_left_assign = 109, - sym__greater_than = 110, - sym__greater_than_equal = 111, - sym__shift_right = 112, - sym__shift_right_assign = 113, - sym__error_sentinel = 114, - sym_translation_unit = 115, - sym_global_directive = 116, - sym_bool_literal = 117, - sym_int_literal = 118, - sym_decimal_int_literal = 119, - sym_float_literal = 120, - sym_decimal_float_literal = 121, - sym_hex_float_literal = 122, - sym_diagnostic_directive = 123, - sym_literal = 124, - sym_ident = 125, - sym_member_ident = 126, - sym_diagnostic_name_token = 127, - sym_diagnostic_rule_name = 128, - sym_template_list = 129, - sym_template_arg_comma_list = 130, - sym_template_arg_expression = 131, - sym_align_attr = 132, - sym_binding_attr = 133, - sym_blend_src_attr = 134, - sym_builtin_attr = 135, - sym_builtin_value_name = 136, - sym_const_attr = 137, - sym_diagnostic_attr = 138, - sym_group_attr = 139, - sym_id_attr = 140, - sym_interpolate_attr = 141, - sym_interpolate_type_name = 142, - sym_interpolate_sampling_name = 143, - sym_invariant_attr = 144, - sym_location_attr = 145, - sym_must_use_attr = 146, - sym_size_attr = 147, - sym_workgroup_size_attr = 148, - sym_vertex_attr = 149, - sym_fragment_attr = 150, - sym_compute_attr = 151, - sym_attribute = 152, - sym_diagnostic_control = 153, - sym_struct_decl = 154, - sym_struct_body_decl = 155, - sym_struct_member = 156, - sym_type_alias_decl = 157, - sym_type_specifier = 158, - sym_template_elaborated_ident = 159, - sym_variable_or_value_statement = 160, - sym_variable_decl = 161, - sym_optionally_typed_ident = 162, - sym_global_variable_decl = 163, - sym_global_value_decl = 164, - sym_primary_expression = 165, - sym_call_expression = 166, - sym_call_phrase = 167, - sym_paren_expression = 168, - sym_argument_expression_list = 169, - sym_expression_comma_list = 170, - sym_component_or_swizzle_specifier = 171, - sym_unary_expression = 172, - sym_singular_expression = 173, - sym_lhs_expression = 174, - sym_core_lhs_expression = 175, - sym_multiplicative_expression = 176, - sym_multiplicative_operator = 177, - sym_additive_expression = 178, - sym_additive_operator = 179, - sym_shift_expression = 180, - sym_relational_expression = 181, - sym_short_circuit_and_expression = 182, - sym_short_circuit_or_expression = 183, - sym_binary_or_expression = 184, - sym_binary_and_expression = 185, - sym_binary_xor_expression = 186, - sym_bitwise_expression = 187, - sym_expression = 188, - sym_compound_statement = 189, - sym_assignment_statement = 190, - sym_compound_assignment_operator = 191, - sym_increment_statement = 192, - sym_decrement_statement = 193, - sym_if_statement = 194, - sym_if_clause = 195, - sym_else_if_clause = 196, - sym_else_clause = 197, - sym_switch_statement = 198, - sym_switch_body = 199, - sym_switch_clause = 200, - sym_case_clause = 201, - sym_default_alone_clause = 202, - sym_case_selectors = 203, - sym_case_selector = 204, - sym_loop_statement = 205, - sym_for_statement = 206, - sym_for_header = 207, - sym_for_init = 208, - sym_for_update = 209, - sym_while_statement = 210, - sym_break_statement = 211, - sym_break_if_statement = 212, - sym_continuing_statement = 213, - sym_continuing_compound_statement = 214, - sym_return_statement = 215, - sym_func_call_statement = 216, - sym_const_assert_statement = 217, - sym_statement = 218, - sym_variable_updating_statement = 219, - sym_function_decl = 220, - sym_function_header = 221, - sym_param_list = 222, - sym_param = 223, - sym_enable_directive = 224, - sym_enable_extension_list = 225, - sym_requires_directive = 226, - sym_software_extension_list = 227, - sym_enable_extension_name = 228, - sym_software_extension_name = 229, - sym_severity_control_name = 230, - sym_swizzle_name = 231, - aux_sym_translation_unit_repeat1 = 232, - aux_sym_translation_unit_repeat2 = 233, - aux_sym_template_arg_comma_list_repeat1 = 234, - aux_sym_struct_body_decl_repeat1 = 235, - aux_sym_struct_member_repeat1 = 236, - aux_sym_expression_comma_list_repeat1 = 237, - aux_sym_compound_statement_repeat1 = 238, - aux_sym_if_statement_repeat1 = 239, - aux_sym_switch_body_repeat1 = 240, - aux_sym_case_selectors_repeat1 = 241, - aux_sym_param_list_repeat1 = 242, - aux_sym_enable_extension_list_repeat1 = 243, - aux_sym_software_extension_list_repeat1 = 244, -}; - -static const char * const ts_symbol_names[] = { - [ts_builtin_sym_end] = "end", - [sym_ident_pattern_token] = "ident_pattern_token", - [anon_sym_SEMI] = ";", - [anon_sym_true] = "true", - [anon_sym_false] = "false", - [aux_sym_decimal_int_literal_token1] = "decimal_int_literal_token1", - [aux_sym_decimal_int_literal_token2] = "decimal_int_literal_token2", - [sym_hex_int_literal] = "hex_int_literal", - [aux_sym_decimal_float_literal_token1] = "decimal_float_literal_token1", - [aux_sym_decimal_float_literal_token2] = "decimal_float_literal_token2", - [aux_sym_decimal_float_literal_token3] = "decimal_float_literal_token3", - [aux_sym_decimal_float_literal_token4] = "decimal_float_literal_token4", - [aux_sym_decimal_float_literal_token5] = "decimal_float_literal_token5", - [aux_sym_hex_float_literal_token1] = "hex_float_literal_token1", - [aux_sym_hex_float_literal_token2] = "hex_float_literal_token2", - [aux_sym_hex_float_literal_token3] = "hex_float_literal_token3", - [anon_sym_diagnostic] = "diagnostic", - [anon_sym_DOT] = ".", - [anon_sym_COMMA] = ",", - [anon_sym_AT] = "@", - [anon_sym_align] = "align", - [anon_sym_LPAREN] = "(", - [anon_sym_RPAREN] = ")", - [anon_sym_binding] = "binding", - [anon_sym_blend_src] = "blend_src", - [anon_sym_builtin] = "builtin", - [anon_sym_const] = "const", - [anon_sym_group] = "group", - [anon_sym_id] = "id", - [anon_sym_interpolate] = "interpolate", - [anon_sym_invariant] = "invariant", - [anon_sym_location] = "location", - [anon_sym_must_use] = "must_use", - [anon_sym_size] = "size", - [anon_sym_workgroup_size] = "workgroup_size", - [anon_sym_vertex] = "vertex", - [anon_sym_fragment] = "fragment", - [anon_sym_compute] = "compute", - [anon_sym_struct] = "struct", - [anon_sym_LBRACE] = "{", - [anon_sym_RBRACE] = "}", - [anon_sym_COLON] = ":", - [anon_sym_alias] = "alias", - [anon_sym_EQ] = "=", - [anon_sym_let] = "let", - [anon_sym_var] = "var", - [anon_sym_override] = "override", - [anon_sym_LBRACK] = "[", - [anon_sym_RBRACK] = "]", - [anon_sym_DASH] = "-", - [anon_sym_BANG] = "!", - [anon_sym_TILDE] = "~", - [anon_sym_STAR] = "*", - [anon_sym_AMP] = "&", - [anon_sym_SLASH] = "/", - [anon_sym_PERCENT] = "%", - [anon_sym_PLUS] = "+", - [anon_sym_EQ_EQ] = "==", - [anon_sym_BANG_EQ] = "!=", - [anon_sym_AMP_AMP] = "&&", - [anon_sym_PIPE_PIPE] = "||", - [anon_sym_PIPE] = "|", - [anon_sym_CARET] = "^", - [anon_sym__] = "_", - [anon_sym_PLUS_EQ] = "+=", - [anon_sym_DASH_EQ] = "-=", - [anon_sym_STAR_EQ] = "*=", - [anon_sym_SLASH_EQ] = "/=", - [anon_sym_PERCENT_EQ] = "%=", - [anon_sym_AMP_EQ] = "&=", - [anon_sym_PIPE_EQ] = "|=", - [anon_sym_CARET_EQ] = "^=", - [anon_sym_PLUS_PLUS] = "++", - [anon_sym_DASH_DASH] = "--", - [anon_sym_if] = "if", - [anon_sym_else] = "else", - [anon_sym_switch] = "switch", - [anon_sym_case] = "case", - [anon_sym_default] = "default", - [anon_sym_loop] = "loop", - [anon_sym_for] = "for", - [anon_sym_while] = "while", - [anon_sym_break] = "break", - [sym_continue_statement] = "continue_statement", - [anon_sym_continuing] = "continuing", - [anon_sym_return] = "return", - [anon_sym_const_assert] = "const_assert", - [anon_sym_discard] = "discard", - [anon_sym_fn] = "fn", - [anon_sym_DASH_GT] = "->", - [anon_sym_enable] = "enable", - [anon_sym_requires] = "requires", - [aux_sym_swizzle_name_token1] = "swizzle_name_token1", - [aux_sym_swizzle_name_token2] = "swizzle_name_token2", - [aux_sym_swizzle_name_token3] = "swizzle_name_token3", - [aux_sym_swizzle_name_token4] = "swizzle_name_token4", - [aux_sym_swizzle_name_token5] = "swizzle_name_token5", - [aux_sym_swizzle_name_token6] = "swizzle_name_token6", - [aux_sym_swizzle_name_token7] = "swizzle_name_token7", - [aux_sym_swizzle_name_token8] = "swizzle_name_token8", - [sym__comment] = "_comment", - [sym__blankspace] = "_blankspace", - [sym__block_comment] = "_block_comment", - [sym__disambiguate_template] = "_disambiguate_template", - [sym__template_args_start] = "_template_args_start", - [sym__template_args_end] = "_template_args_end", - [sym__less_than] = "_less_than", - [sym__less_than_equal] = "_less_than_equal", - [sym__shift_left] = "_shift_left", - [sym__shift_left_assign] = "_shift_left_assign", - [sym__greater_than] = "_greater_than", - [sym__greater_than_equal] = "_greater_than_equal", - [sym__shift_right] = "_shift_right", - [sym__shift_right_assign] = "_shift_right_assign", - [sym__error_sentinel] = "_error_sentinel", - [sym_translation_unit] = "translation_unit", - [sym_global_directive] = "global_directive", - [sym_bool_literal] = "bool_literal", - [sym_int_literal] = "int_literal", - [sym_decimal_int_literal] = "decimal_int_literal", - [sym_float_literal] = "float_literal", - [sym_decimal_float_literal] = "decimal_float_literal", - [sym_hex_float_literal] = "hex_float_literal", - [sym_diagnostic_directive] = "diagnostic_directive", - [sym_literal] = "literal", - [sym_ident] = "ident", - [sym_member_ident] = "member_ident", - [sym_diagnostic_name_token] = "diagnostic_name_token", - [sym_diagnostic_rule_name] = "diagnostic_rule_name", - [sym_template_list] = "template_list", - [sym_template_arg_comma_list] = "template_arg_comma_list", - [sym_template_arg_expression] = "template_arg_expression", - [sym_align_attr] = "align_attr", - [sym_binding_attr] = "binding_attr", - [sym_blend_src_attr] = "blend_src_attr", - [sym_builtin_attr] = "builtin_attr", - [sym_builtin_value_name] = "builtin_value_name", - [sym_const_attr] = "const_attr", - [sym_diagnostic_attr] = "diagnostic_attr", - [sym_group_attr] = "group_attr", - [sym_id_attr] = "id_attr", - [sym_interpolate_attr] = "interpolate_attr", - [sym_interpolate_type_name] = "interpolate_type_name", - [sym_interpolate_sampling_name] = "interpolate_sampling_name", - [sym_invariant_attr] = "invariant_attr", - [sym_location_attr] = "location_attr", - [sym_must_use_attr] = "must_use_attr", - [sym_size_attr] = "size_attr", - [sym_workgroup_size_attr] = "workgroup_size_attr", - [sym_vertex_attr] = "vertex_attr", - [sym_fragment_attr] = "fragment_attr", - [sym_compute_attr] = "compute_attr", - [sym_attribute] = "attribute", - [sym_diagnostic_control] = "diagnostic_control", - [sym_struct_decl] = "struct_decl", - [sym_struct_body_decl] = "struct_body_decl", - [sym_struct_member] = "struct_member", - [sym_type_alias_decl] = "type_alias_decl", - [sym_type_specifier] = "type_specifier", - [sym_template_elaborated_ident] = "template_elaborated_ident", - [sym_variable_or_value_statement] = "variable_or_value_statement", - [sym_variable_decl] = "variable_decl", - [sym_optionally_typed_ident] = "optionally_typed_ident", - [sym_global_variable_decl] = "global_variable_decl", - [sym_global_value_decl] = "global_value_decl", - [sym_primary_expression] = "primary_expression", - [sym_call_expression] = "call_expression", - [sym_call_phrase] = "call_phrase", - [sym_paren_expression] = "paren_expression", - [sym_argument_expression_list] = "argument_expression_list", - [sym_expression_comma_list] = "expression_comma_list", - [sym_component_or_swizzle_specifier] = "component_or_swizzle_specifier", - [sym_unary_expression] = "unary_expression", - [sym_singular_expression] = "singular_expression", - [sym_lhs_expression] = "lhs_expression", - [sym_core_lhs_expression] = "core_lhs_expression", - [sym_multiplicative_expression] = "multiplicative_expression", - [sym_multiplicative_operator] = "multiplicative_operator", - [sym_additive_expression] = "additive_expression", - [sym_additive_operator] = "additive_operator", - [sym_shift_expression] = "shift_expression", - [sym_relational_expression] = "relational_expression", - [sym_short_circuit_and_expression] = "short_circuit_and_expression", - [sym_short_circuit_or_expression] = "short_circuit_or_expression", - [sym_binary_or_expression] = "binary_or_expression", - [sym_binary_and_expression] = "binary_and_expression", - [sym_binary_xor_expression] = "binary_xor_expression", - [sym_bitwise_expression] = "bitwise_expression", - [sym_expression] = "expression", - [sym_compound_statement] = "compound_statement", - [sym_assignment_statement] = "assignment_statement", - [sym_compound_assignment_operator] = "compound_assignment_operator", - [sym_increment_statement] = "increment_statement", - [sym_decrement_statement] = "decrement_statement", - [sym_if_statement] = "if_statement", - [sym_if_clause] = "if_clause", - [sym_else_if_clause] = "else_if_clause", - [sym_else_clause] = "else_clause", - [sym_switch_statement] = "switch_statement", - [sym_switch_body] = "switch_body", - [sym_switch_clause] = "switch_clause", - [sym_case_clause] = "case_clause", - [sym_default_alone_clause] = "default_alone_clause", - [sym_case_selectors] = "case_selectors", - [sym_case_selector] = "case_selector", - [sym_loop_statement] = "loop_statement", - [sym_for_statement] = "for_statement", - [sym_for_header] = "for_header", - [sym_for_init] = "for_init", - [sym_for_update] = "for_update", - [sym_while_statement] = "while_statement", - [sym_break_statement] = "break_statement", - [sym_break_if_statement] = "break_if_statement", - [sym_continuing_statement] = "continuing_statement", - [sym_continuing_compound_statement] = "continuing_compound_statement", - [sym_return_statement] = "return_statement", - [sym_func_call_statement] = "func_call_statement", - [sym_const_assert_statement] = "const_assert_statement", - [sym_statement] = "statement", - [sym_variable_updating_statement] = "variable_updating_statement", - [sym_function_decl] = "function_decl", - [sym_function_header] = "function_header", - [sym_param_list] = "param_list", - [sym_param] = "param", - [sym_enable_directive] = "enable_directive", - [sym_enable_extension_list] = "enable_extension_list", - [sym_requires_directive] = "requires_directive", - [sym_software_extension_list] = "software_extension_list", - [sym_enable_extension_name] = "enable_extension_name", - [sym_software_extension_name] = "software_extension_name", - [sym_severity_control_name] = "severity_control_name", - [sym_swizzle_name] = "swizzle_name", - [aux_sym_translation_unit_repeat1] = "translation_unit_repeat1", - [aux_sym_translation_unit_repeat2] = "translation_unit_repeat2", - [aux_sym_template_arg_comma_list_repeat1] = "template_arg_comma_list_repeat1", - [aux_sym_struct_body_decl_repeat1] = "struct_body_decl_repeat1", - [aux_sym_struct_member_repeat1] = "struct_member_repeat1", - [aux_sym_expression_comma_list_repeat1] = "expression_comma_list_repeat1", - [aux_sym_compound_statement_repeat1] = "compound_statement_repeat1", - [aux_sym_if_statement_repeat1] = "if_statement_repeat1", - [aux_sym_switch_body_repeat1] = "switch_body_repeat1", - [aux_sym_case_selectors_repeat1] = "case_selectors_repeat1", - [aux_sym_param_list_repeat1] = "param_list_repeat1", - [aux_sym_enable_extension_list_repeat1] = "enable_extension_list_repeat1", - [aux_sym_software_extension_list_repeat1] = "software_extension_list_repeat1", -}; - -static const TSSymbol ts_symbol_map[] = { - [ts_builtin_sym_end] = ts_builtin_sym_end, - [sym_ident_pattern_token] = sym_ident_pattern_token, - [anon_sym_SEMI] = anon_sym_SEMI, - [anon_sym_true] = anon_sym_true, - [anon_sym_false] = anon_sym_false, - [aux_sym_decimal_int_literal_token1] = aux_sym_decimal_int_literal_token1, - [aux_sym_decimal_int_literal_token2] = aux_sym_decimal_int_literal_token2, - [sym_hex_int_literal] = sym_hex_int_literal, - [aux_sym_decimal_float_literal_token1] = aux_sym_decimal_float_literal_token1, - [aux_sym_decimal_float_literal_token2] = aux_sym_decimal_float_literal_token2, - [aux_sym_decimal_float_literal_token3] = aux_sym_decimal_float_literal_token3, - [aux_sym_decimal_float_literal_token4] = aux_sym_decimal_float_literal_token4, - [aux_sym_decimal_float_literal_token5] = aux_sym_decimal_float_literal_token5, - [aux_sym_hex_float_literal_token1] = aux_sym_hex_float_literal_token1, - [aux_sym_hex_float_literal_token2] = aux_sym_hex_float_literal_token2, - [aux_sym_hex_float_literal_token3] = aux_sym_hex_float_literal_token3, - [anon_sym_diagnostic] = anon_sym_diagnostic, - [anon_sym_DOT] = anon_sym_DOT, - [anon_sym_COMMA] = anon_sym_COMMA, - [anon_sym_AT] = anon_sym_AT, - [anon_sym_align] = anon_sym_align, - [anon_sym_LPAREN] = anon_sym_LPAREN, - [anon_sym_RPAREN] = anon_sym_RPAREN, - [anon_sym_binding] = anon_sym_binding, - [anon_sym_blend_src] = anon_sym_blend_src, - [anon_sym_builtin] = anon_sym_builtin, - [anon_sym_const] = anon_sym_const, - [anon_sym_group] = anon_sym_group, - [anon_sym_id] = anon_sym_id, - [anon_sym_interpolate] = anon_sym_interpolate, - [anon_sym_invariant] = anon_sym_invariant, - [anon_sym_location] = anon_sym_location, - [anon_sym_must_use] = anon_sym_must_use, - [anon_sym_size] = anon_sym_size, - [anon_sym_workgroup_size] = anon_sym_workgroup_size, - [anon_sym_vertex] = anon_sym_vertex, - [anon_sym_fragment] = anon_sym_fragment, - [anon_sym_compute] = anon_sym_compute, - [anon_sym_struct] = anon_sym_struct, - [anon_sym_LBRACE] = anon_sym_LBRACE, - [anon_sym_RBRACE] = anon_sym_RBRACE, - [anon_sym_COLON] = anon_sym_COLON, - [anon_sym_alias] = anon_sym_alias, - [anon_sym_EQ] = anon_sym_EQ, - [anon_sym_let] = anon_sym_let, - [anon_sym_var] = anon_sym_var, - [anon_sym_override] = anon_sym_override, - [anon_sym_LBRACK] = anon_sym_LBRACK, - [anon_sym_RBRACK] = anon_sym_RBRACK, - [anon_sym_DASH] = anon_sym_DASH, - [anon_sym_BANG] = anon_sym_BANG, - [anon_sym_TILDE] = anon_sym_TILDE, - [anon_sym_STAR] = anon_sym_STAR, - [anon_sym_AMP] = anon_sym_AMP, - [anon_sym_SLASH] = anon_sym_SLASH, - [anon_sym_PERCENT] = anon_sym_PERCENT, - [anon_sym_PLUS] = anon_sym_PLUS, - [anon_sym_EQ_EQ] = anon_sym_EQ_EQ, - [anon_sym_BANG_EQ] = anon_sym_BANG_EQ, - [anon_sym_AMP_AMP] = anon_sym_AMP_AMP, - [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, - [anon_sym_PIPE] = anon_sym_PIPE, - [anon_sym_CARET] = anon_sym_CARET, - [anon_sym__] = anon_sym__, - [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, - [anon_sym_DASH_EQ] = anon_sym_DASH_EQ, - [anon_sym_STAR_EQ] = anon_sym_STAR_EQ, - [anon_sym_SLASH_EQ] = anon_sym_SLASH_EQ, - [anon_sym_PERCENT_EQ] = anon_sym_PERCENT_EQ, - [anon_sym_AMP_EQ] = anon_sym_AMP_EQ, - [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ, - [anon_sym_CARET_EQ] = anon_sym_CARET_EQ, - [anon_sym_PLUS_PLUS] = anon_sym_PLUS_PLUS, - [anon_sym_DASH_DASH] = anon_sym_DASH_DASH, - [anon_sym_if] = anon_sym_if, - [anon_sym_else] = anon_sym_else, - [anon_sym_switch] = anon_sym_switch, - [anon_sym_case] = anon_sym_case, - [anon_sym_default] = anon_sym_default, - [anon_sym_loop] = anon_sym_loop, - [anon_sym_for] = anon_sym_for, - [anon_sym_while] = anon_sym_while, - [anon_sym_break] = anon_sym_break, - [sym_continue_statement] = sym_continue_statement, - [anon_sym_continuing] = anon_sym_continuing, - [anon_sym_return] = anon_sym_return, - [anon_sym_const_assert] = anon_sym_const_assert, - [anon_sym_discard] = anon_sym_discard, - [anon_sym_fn] = anon_sym_fn, - [anon_sym_DASH_GT] = anon_sym_DASH_GT, - [anon_sym_enable] = anon_sym_enable, - [anon_sym_requires] = anon_sym_requires, - [aux_sym_swizzle_name_token1] = aux_sym_swizzle_name_token1, - [aux_sym_swizzle_name_token2] = aux_sym_swizzle_name_token2, - [aux_sym_swizzle_name_token3] = aux_sym_swizzle_name_token3, - [aux_sym_swizzle_name_token4] = aux_sym_swizzle_name_token4, - [aux_sym_swizzle_name_token5] = aux_sym_swizzle_name_token5, - [aux_sym_swizzle_name_token6] = aux_sym_swizzle_name_token6, - [aux_sym_swizzle_name_token7] = aux_sym_swizzle_name_token7, - [aux_sym_swizzle_name_token8] = aux_sym_swizzle_name_token8, - [sym__comment] = sym__comment, - [sym__blankspace] = sym__blankspace, - [sym__block_comment] = sym__block_comment, - [sym__disambiguate_template] = sym__disambiguate_template, - [sym__template_args_start] = sym__template_args_start, - [sym__template_args_end] = sym__template_args_end, - [sym__less_than] = sym__less_than, - [sym__less_than_equal] = sym__less_than_equal, - [sym__shift_left] = sym__shift_left, - [sym__shift_left_assign] = sym__shift_left_assign, - [sym__greater_than] = sym__greater_than, - [sym__greater_than_equal] = sym__greater_than_equal, - [sym__shift_right] = sym__shift_right, - [sym__shift_right_assign] = sym__shift_right_assign, - [sym__error_sentinel] = sym__error_sentinel, - [sym_translation_unit] = sym_translation_unit, - [sym_global_directive] = sym_global_directive, - [sym_bool_literal] = sym_bool_literal, - [sym_int_literal] = sym_int_literal, - [sym_decimal_int_literal] = sym_decimal_int_literal, - [sym_float_literal] = sym_float_literal, - [sym_decimal_float_literal] = sym_decimal_float_literal, - [sym_hex_float_literal] = sym_hex_float_literal, - [sym_diagnostic_directive] = sym_diagnostic_directive, - [sym_literal] = sym_literal, - [sym_ident] = sym_ident, - [sym_member_ident] = sym_member_ident, - [sym_diagnostic_name_token] = sym_diagnostic_name_token, - [sym_diagnostic_rule_name] = sym_diagnostic_rule_name, - [sym_template_list] = sym_template_list, - [sym_template_arg_comma_list] = sym_template_arg_comma_list, - [sym_template_arg_expression] = sym_template_arg_expression, - [sym_align_attr] = sym_align_attr, - [sym_binding_attr] = sym_binding_attr, - [sym_blend_src_attr] = sym_blend_src_attr, - [sym_builtin_attr] = sym_builtin_attr, - [sym_builtin_value_name] = sym_builtin_value_name, - [sym_const_attr] = sym_const_attr, - [sym_diagnostic_attr] = sym_diagnostic_attr, - [sym_group_attr] = sym_group_attr, - [sym_id_attr] = sym_id_attr, - [sym_interpolate_attr] = sym_interpolate_attr, - [sym_interpolate_type_name] = sym_interpolate_type_name, - [sym_interpolate_sampling_name] = sym_interpolate_sampling_name, - [sym_invariant_attr] = sym_invariant_attr, - [sym_location_attr] = sym_location_attr, - [sym_must_use_attr] = sym_must_use_attr, - [sym_size_attr] = sym_size_attr, - [sym_workgroup_size_attr] = sym_workgroup_size_attr, - [sym_vertex_attr] = sym_vertex_attr, - [sym_fragment_attr] = sym_fragment_attr, - [sym_compute_attr] = sym_compute_attr, - [sym_attribute] = sym_attribute, - [sym_diagnostic_control] = sym_diagnostic_control, - [sym_struct_decl] = sym_struct_decl, - [sym_struct_body_decl] = sym_struct_body_decl, - [sym_struct_member] = sym_struct_member, - [sym_type_alias_decl] = sym_type_alias_decl, - [sym_type_specifier] = sym_type_specifier, - [sym_template_elaborated_ident] = sym_template_elaborated_ident, - [sym_variable_or_value_statement] = sym_variable_or_value_statement, - [sym_variable_decl] = sym_variable_decl, - [sym_optionally_typed_ident] = sym_optionally_typed_ident, - [sym_global_variable_decl] = sym_global_variable_decl, - [sym_global_value_decl] = sym_global_value_decl, - [sym_primary_expression] = sym_primary_expression, - [sym_call_expression] = sym_call_expression, - [sym_call_phrase] = sym_call_phrase, - [sym_paren_expression] = sym_paren_expression, - [sym_argument_expression_list] = sym_argument_expression_list, - [sym_expression_comma_list] = sym_expression_comma_list, - [sym_component_or_swizzle_specifier] = sym_component_or_swizzle_specifier, - [sym_unary_expression] = sym_unary_expression, - [sym_singular_expression] = sym_singular_expression, - [sym_lhs_expression] = sym_lhs_expression, - [sym_core_lhs_expression] = sym_core_lhs_expression, - [sym_multiplicative_expression] = sym_multiplicative_expression, - [sym_multiplicative_operator] = sym_multiplicative_operator, - [sym_additive_expression] = sym_additive_expression, - [sym_additive_operator] = sym_additive_operator, - [sym_shift_expression] = sym_shift_expression, - [sym_relational_expression] = sym_relational_expression, - [sym_short_circuit_and_expression] = sym_short_circuit_and_expression, - [sym_short_circuit_or_expression] = sym_short_circuit_or_expression, - [sym_binary_or_expression] = sym_binary_or_expression, - [sym_binary_and_expression] = sym_binary_and_expression, - [sym_binary_xor_expression] = sym_binary_xor_expression, - [sym_bitwise_expression] = sym_bitwise_expression, - [sym_expression] = sym_expression, - [sym_compound_statement] = sym_compound_statement, - [sym_assignment_statement] = sym_assignment_statement, - [sym_compound_assignment_operator] = sym_compound_assignment_operator, - [sym_increment_statement] = sym_increment_statement, - [sym_decrement_statement] = sym_decrement_statement, - [sym_if_statement] = sym_if_statement, - [sym_if_clause] = sym_if_clause, - [sym_else_if_clause] = sym_else_if_clause, - [sym_else_clause] = sym_else_clause, - [sym_switch_statement] = sym_switch_statement, - [sym_switch_body] = sym_switch_body, - [sym_switch_clause] = sym_switch_clause, - [sym_case_clause] = sym_case_clause, - [sym_default_alone_clause] = sym_default_alone_clause, - [sym_case_selectors] = sym_case_selectors, - [sym_case_selector] = sym_case_selector, - [sym_loop_statement] = sym_loop_statement, - [sym_for_statement] = sym_for_statement, - [sym_for_header] = sym_for_header, - [sym_for_init] = sym_for_init, - [sym_for_update] = sym_for_update, - [sym_while_statement] = sym_while_statement, - [sym_break_statement] = sym_break_statement, - [sym_break_if_statement] = sym_break_if_statement, - [sym_continuing_statement] = sym_continuing_statement, - [sym_continuing_compound_statement] = sym_continuing_compound_statement, - [sym_return_statement] = sym_return_statement, - [sym_func_call_statement] = sym_func_call_statement, - [sym_const_assert_statement] = sym_const_assert_statement, - [sym_statement] = sym_statement, - [sym_variable_updating_statement] = sym_variable_updating_statement, - [sym_function_decl] = sym_function_decl, - [sym_function_header] = sym_function_header, - [sym_param_list] = sym_param_list, - [sym_param] = sym_param, - [sym_enable_directive] = sym_enable_directive, - [sym_enable_extension_list] = sym_enable_extension_list, - [sym_requires_directive] = sym_requires_directive, - [sym_software_extension_list] = sym_software_extension_list, - [sym_enable_extension_name] = sym_enable_extension_name, - [sym_software_extension_name] = sym_software_extension_name, - [sym_severity_control_name] = sym_severity_control_name, - [sym_swizzle_name] = sym_swizzle_name, - [aux_sym_translation_unit_repeat1] = aux_sym_translation_unit_repeat1, - [aux_sym_translation_unit_repeat2] = aux_sym_translation_unit_repeat2, - [aux_sym_template_arg_comma_list_repeat1] = aux_sym_template_arg_comma_list_repeat1, - [aux_sym_struct_body_decl_repeat1] = aux_sym_struct_body_decl_repeat1, - [aux_sym_struct_member_repeat1] = aux_sym_struct_member_repeat1, - [aux_sym_expression_comma_list_repeat1] = aux_sym_expression_comma_list_repeat1, - [aux_sym_compound_statement_repeat1] = aux_sym_compound_statement_repeat1, - [aux_sym_if_statement_repeat1] = aux_sym_if_statement_repeat1, - [aux_sym_switch_body_repeat1] = aux_sym_switch_body_repeat1, - [aux_sym_case_selectors_repeat1] = aux_sym_case_selectors_repeat1, - [aux_sym_param_list_repeat1] = aux_sym_param_list_repeat1, - [aux_sym_enable_extension_list_repeat1] = aux_sym_enable_extension_list_repeat1, - [aux_sym_software_extension_list_repeat1] = aux_sym_software_extension_list_repeat1, -}; - -static const TSSymbolMetadata ts_symbol_metadata[] = { - [ts_builtin_sym_end] = { - .visible = false, - .named = true, - }, - [sym_ident_pattern_token] = { - .visible = true, - .named = true, - }, - [anon_sym_SEMI] = { - .visible = true, - .named = false, - }, - [anon_sym_true] = { - .visible = true, - .named = false, - }, - [anon_sym_false] = { - .visible = true, - .named = false, - }, - [aux_sym_decimal_int_literal_token1] = { - .visible = false, - .named = false, - }, - [aux_sym_decimal_int_literal_token2] = { - .visible = false, - .named = false, - }, - [sym_hex_int_literal] = { - .visible = true, - .named = true, - }, - [aux_sym_decimal_float_literal_token1] = { - .visible = false, - .named = false, - }, - [aux_sym_decimal_float_literal_token2] = { - .visible = false, - .named = false, - }, - [aux_sym_decimal_float_literal_token3] = { - .visible = false, - .named = false, - }, - [aux_sym_decimal_float_literal_token4] = { - .visible = false, - .named = false, - }, - [aux_sym_decimal_float_literal_token5] = { - .visible = false, - .named = false, - }, - [aux_sym_hex_float_literal_token1] = { - .visible = false, - .named = false, - }, - [aux_sym_hex_float_literal_token2] = { - .visible = false, - .named = false, - }, - [aux_sym_hex_float_literal_token3] = { - .visible = false, - .named = false, - }, - [anon_sym_diagnostic] = { - .visible = true, - .named = false, - }, - [anon_sym_DOT] = { - .visible = true, - .named = false, - }, - [anon_sym_COMMA] = { - .visible = true, - .named = false, - }, - [anon_sym_AT] = { - .visible = true, - .named = false, - }, - [anon_sym_align] = { - .visible = true, - .named = false, - }, - [anon_sym_LPAREN] = { - .visible = true, - .named = false, - }, - [anon_sym_RPAREN] = { - .visible = true, - .named = false, - }, - [anon_sym_binding] = { - .visible = true, - .named = false, - }, - [anon_sym_blend_src] = { - .visible = true, - .named = false, - }, - [anon_sym_builtin] = { - .visible = true, - .named = false, - }, - [anon_sym_const] = { - .visible = true, - .named = false, - }, - [anon_sym_group] = { - .visible = true, - .named = false, - }, - [anon_sym_id] = { - .visible = true, - .named = false, - }, - [anon_sym_interpolate] = { - .visible = true, - .named = false, - }, - [anon_sym_invariant] = { - .visible = true, - .named = false, - }, - [anon_sym_location] = { - .visible = true, - .named = false, - }, - [anon_sym_must_use] = { - .visible = true, - .named = false, - }, - [anon_sym_size] = { - .visible = true, - .named = false, - }, - [anon_sym_workgroup_size] = { - .visible = true, - .named = false, - }, - [anon_sym_vertex] = { - .visible = true, - .named = false, - }, - [anon_sym_fragment] = { - .visible = true, - .named = false, - }, - [anon_sym_compute] = { - .visible = true, - .named = false, - }, - [anon_sym_struct] = { - .visible = true, - .named = false, - }, - [anon_sym_LBRACE] = { - .visible = true, - .named = false, - }, - [anon_sym_RBRACE] = { - .visible = true, - .named = false, - }, - [anon_sym_COLON] = { - .visible = true, - .named = false, - }, - [anon_sym_alias] = { - .visible = true, - .named = false, - }, - [anon_sym_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_let] = { - .visible = true, - .named = false, - }, - [anon_sym_var] = { - .visible = true, - .named = false, - }, - [anon_sym_override] = { - .visible = true, - .named = false, - }, - [anon_sym_LBRACK] = { - .visible = true, - .named = false, - }, - [anon_sym_RBRACK] = { - .visible = true, - .named = false, - }, - [anon_sym_DASH] = { - .visible = true, - .named = false, - }, - [anon_sym_BANG] = { - .visible = true, - .named = false, - }, - [anon_sym_TILDE] = { - .visible = true, - .named = false, - }, - [anon_sym_STAR] = { - .visible = true, - .named = false, - }, - [anon_sym_AMP] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH] = { - .visible = true, - .named = false, - }, - [anon_sym_PERCENT] = { - .visible = true, - .named = false, - }, - [anon_sym_PLUS] = { - .visible = true, - .named = false, - }, - [anon_sym_EQ_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_BANG_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_AMP_AMP] = { - .visible = true, - .named = false, - }, - [anon_sym_PIPE_PIPE] = { - .visible = true, - .named = false, - }, - [anon_sym_PIPE] = { - .visible = true, - .named = false, - }, - [anon_sym_CARET] = { - .visible = true, - .named = false, - }, - [anon_sym__] = { - .visible = true, - .named = false, - }, - [anon_sym_PLUS_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_DASH_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_STAR_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_SLASH_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_PERCENT_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_AMP_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_PIPE_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_CARET_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_PLUS_PLUS] = { - .visible = true, - .named = false, - }, - [anon_sym_DASH_DASH] = { - .visible = true, - .named = false, - }, - [anon_sym_if] = { - .visible = true, - .named = false, - }, - [anon_sym_else] = { - .visible = true, - .named = false, - }, - [anon_sym_switch] = { - .visible = true, - .named = false, - }, - [anon_sym_case] = { - .visible = true, - .named = false, - }, - [anon_sym_default] = { - .visible = true, - .named = false, - }, - [anon_sym_loop] = { - .visible = true, - .named = false, - }, - [anon_sym_for] = { - .visible = true, - .named = false, - }, - [anon_sym_while] = { - .visible = true, - .named = false, - }, - [anon_sym_break] = { - .visible = true, - .named = false, - }, - [sym_continue_statement] = { - .visible = true, - .named = true, - }, - [anon_sym_continuing] = { - .visible = true, - .named = false, - }, - [anon_sym_return] = { - .visible = true, - .named = false, - }, - [anon_sym_const_assert] = { - .visible = true, - .named = false, - }, - [anon_sym_discard] = { - .visible = true, - .named = false, - }, - [anon_sym_fn] = { - .visible = true, - .named = false, - }, - [anon_sym_DASH_GT] = { - .visible = true, - .named = false, - }, - [anon_sym_enable] = { - .visible = true, - .named = false, - }, - [anon_sym_requires] = { - .visible = true, - .named = false, - }, - [aux_sym_swizzle_name_token1] = { - .visible = false, - .named = false, - }, - [aux_sym_swizzle_name_token2] = { - .visible = false, - .named = false, - }, - [aux_sym_swizzle_name_token3] = { - .visible = false, - .named = false, - }, - [aux_sym_swizzle_name_token4] = { - .visible = false, - .named = false, - }, - [aux_sym_swizzle_name_token5] = { - .visible = false, - .named = false, - }, - [aux_sym_swizzle_name_token6] = { - .visible = false, - .named = false, - }, - [aux_sym_swizzle_name_token7] = { - .visible = false, - .named = false, - }, - [aux_sym_swizzle_name_token8] = { - .visible = false, - .named = false, - }, - [sym__comment] = { - .visible = false, - .named = true, - }, - [sym__blankspace] = { - .visible = false, - .named = true, - }, - [sym__block_comment] = { - .visible = false, - .named = true, - }, - [sym__disambiguate_template] = { - .visible = false, - .named = true, - }, - [sym__template_args_start] = { - .visible = false, - .named = true, - }, - [sym__template_args_end] = { - .visible = false, - .named = true, - }, - [sym__less_than] = { - .visible = false, - .named = true, - }, - [sym__less_than_equal] = { - .visible = false, - .named = true, - }, - [sym__shift_left] = { - .visible = false, - .named = true, - }, - [sym__shift_left_assign] = { - .visible = false, - .named = true, - }, - [sym__greater_than] = { - .visible = false, - .named = true, - }, - [sym__greater_than_equal] = { - .visible = false, - .named = true, - }, - [sym__shift_right] = { - .visible = false, - .named = true, - }, - [sym__shift_right_assign] = { - .visible = false, - .named = true, - }, - [sym__error_sentinel] = { - .visible = false, - .named = true, - }, - [sym_translation_unit] = { - .visible = true, - .named = true, - }, - [sym_global_directive] = { - .visible = true, - .named = true, - }, - [sym_bool_literal] = { - .visible = true, - .named = true, - }, - [sym_int_literal] = { - .visible = true, - .named = true, - }, - [sym_decimal_int_literal] = { - .visible = true, - .named = true, - }, - [sym_float_literal] = { - .visible = true, - .named = true, - }, - [sym_decimal_float_literal] = { - .visible = true, - .named = true, - }, - [sym_hex_float_literal] = { - .visible = true, - .named = true, - }, - [sym_diagnostic_directive] = { - .visible = true, - .named = true, - }, - [sym_literal] = { - .visible = true, - .named = true, - }, - [sym_ident] = { - .visible = true, - .named = true, - }, - [sym_member_ident] = { - .visible = true, - .named = true, - }, - [sym_diagnostic_name_token] = { - .visible = true, - .named = true, - }, - [sym_diagnostic_rule_name] = { - .visible = true, - .named = true, - }, - [sym_template_list] = { - .visible = true, - .named = true, - }, - [sym_template_arg_comma_list] = { - .visible = true, - .named = true, - }, - [sym_template_arg_expression] = { - .visible = true, - .named = true, - }, - [sym_align_attr] = { - .visible = true, - .named = true, - }, - [sym_binding_attr] = { - .visible = true, - .named = true, - }, - [sym_blend_src_attr] = { - .visible = true, - .named = true, - }, - [sym_builtin_attr] = { - .visible = true, - .named = true, - }, - [sym_builtin_value_name] = { - .visible = true, - .named = true, - }, - [sym_const_attr] = { - .visible = true, - .named = true, - }, - [sym_diagnostic_attr] = { - .visible = true, - .named = true, - }, - [sym_group_attr] = { - .visible = true, - .named = true, - }, - [sym_id_attr] = { - .visible = true, - .named = true, - }, - [sym_interpolate_attr] = { - .visible = true, - .named = true, - }, - [sym_interpolate_type_name] = { - .visible = true, - .named = true, - }, - [sym_interpolate_sampling_name] = { - .visible = true, - .named = true, - }, - [sym_invariant_attr] = { - .visible = true, - .named = true, - }, - [sym_location_attr] = { - .visible = true, - .named = true, - }, - [sym_must_use_attr] = { - .visible = true, - .named = true, - }, - [sym_size_attr] = { - .visible = true, - .named = true, - }, - [sym_workgroup_size_attr] = { - .visible = true, - .named = true, - }, - [sym_vertex_attr] = { - .visible = true, - .named = true, - }, - [sym_fragment_attr] = { - .visible = true, - .named = true, - }, - [sym_compute_attr] = { - .visible = true, - .named = true, - }, - [sym_attribute] = { - .visible = true, - .named = true, - }, - [sym_diagnostic_control] = { - .visible = true, - .named = true, - }, - [sym_struct_decl] = { - .visible = true, - .named = true, - }, - [sym_struct_body_decl] = { - .visible = true, - .named = true, - }, - [sym_struct_member] = { - .visible = true, - .named = true, - }, - [sym_type_alias_decl] = { - .visible = true, - .named = true, - }, - [sym_type_specifier] = { - .visible = true, - .named = true, - }, - [sym_template_elaborated_ident] = { - .visible = true, - .named = true, - }, - [sym_variable_or_value_statement] = { - .visible = true, - .named = true, - }, - [sym_variable_decl] = { - .visible = true, - .named = true, - }, - [sym_optionally_typed_ident] = { - .visible = true, - .named = true, - }, - [sym_global_variable_decl] = { - .visible = true, - .named = true, - }, - [sym_global_value_decl] = { - .visible = true, - .named = true, - }, - [sym_primary_expression] = { - .visible = true, - .named = true, - }, - [sym_call_expression] = { - .visible = true, - .named = true, - }, - [sym_call_phrase] = { - .visible = true, - .named = true, - }, - [sym_paren_expression] = { - .visible = true, - .named = true, - }, - [sym_argument_expression_list] = { - .visible = true, - .named = true, - }, - [sym_expression_comma_list] = { - .visible = true, - .named = true, - }, - [sym_component_or_swizzle_specifier] = { - .visible = true, - .named = true, - }, - [sym_unary_expression] = { - .visible = true, - .named = true, - }, - [sym_singular_expression] = { - .visible = true, - .named = true, - }, - [sym_lhs_expression] = { - .visible = true, - .named = true, - }, - [sym_core_lhs_expression] = { - .visible = true, - .named = true, - }, - [sym_multiplicative_expression] = { - .visible = true, - .named = true, - }, - [sym_multiplicative_operator] = { - .visible = true, - .named = true, - }, - [sym_additive_expression] = { - .visible = true, - .named = true, - }, - [sym_additive_operator] = { - .visible = true, - .named = true, - }, - [sym_shift_expression] = { - .visible = true, - .named = true, - }, - [sym_relational_expression] = { - .visible = true, - .named = true, - }, - [sym_short_circuit_and_expression] = { - .visible = true, - .named = true, - }, - [sym_short_circuit_or_expression] = { - .visible = true, - .named = true, - }, - [sym_binary_or_expression] = { - .visible = true, - .named = true, - }, - [sym_binary_and_expression] = { - .visible = true, - .named = true, - }, - [sym_binary_xor_expression] = { - .visible = true, - .named = true, - }, - [sym_bitwise_expression] = { - .visible = true, - .named = true, - }, - [sym_expression] = { - .visible = true, - .named = true, - }, - [sym_compound_statement] = { - .visible = true, - .named = true, - }, - [sym_assignment_statement] = { - .visible = true, - .named = true, - }, - [sym_compound_assignment_operator] = { - .visible = true, - .named = true, - }, - [sym_increment_statement] = { - .visible = true, - .named = true, - }, - [sym_decrement_statement] = { - .visible = true, - .named = true, - }, - [sym_if_statement] = { - .visible = true, - .named = true, - }, - [sym_if_clause] = { - .visible = true, - .named = true, - }, - [sym_else_if_clause] = { - .visible = true, - .named = true, - }, - [sym_else_clause] = { - .visible = true, - .named = true, - }, - [sym_switch_statement] = { - .visible = true, - .named = true, - }, - [sym_switch_body] = { - .visible = true, - .named = true, - }, - [sym_switch_clause] = { - .visible = true, - .named = true, - }, - [sym_case_clause] = { - .visible = true, - .named = true, - }, - [sym_default_alone_clause] = { - .visible = true, - .named = true, - }, - [sym_case_selectors] = { - .visible = true, - .named = true, - }, - [sym_case_selector] = { - .visible = true, - .named = true, - }, - [sym_loop_statement] = { - .visible = true, - .named = true, - }, - [sym_for_statement] = { - .visible = true, - .named = true, - }, - [sym_for_header] = { - .visible = true, - .named = true, - }, - [sym_for_init] = { - .visible = true, - .named = true, - }, - [sym_for_update] = { - .visible = true, - .named = true, - }, - [sym_while_statement] = { - .visible = true, - .named = true, - }, - [sym_break_statement] = { - .visible = true, - .named = true, - }, - [sym_break_if_statement] = { - .visible = true, - .named = true, - }, - [sym_continuing_statement] = { - .visible = true, - .named = true, - }, - [sym_continuing_compound_statement] = { - .visible = true, - .named = true, - }, - [sym_return_statement] = { - .visible = true, - .named = true, - }, - [sym_func_call_statement] = { - .visible = true, - .named = true, - }, - [sym_const_assert_statement] = { - .visible = true, - .named = true, - }, - [sym_statement] = { - .visible = true, - .named = true, - }, - [sym_variable_updating_statement] = { - .visible = true, - .named = true, - }, - [sym_function_decl] = { - .visible = true, - .named = true, - }, - [sym_function_header] = { - .visible = true, - .named = true, - }, - [sym_param_list] = { - .visible = true, - .named = true, - }, - [sym_param] = { - .visible = true, - .named = true, - }, - [sym_enable_directive] = { - .visible = true, - .named = true, - }, - [sym_enable_extension_list] = { - .visible = true, - .named = true, - }, - [sym_requires_directive] = { - .visible = true, - .named = true, - }, - [sym_software_extension_list] = { - .visible = true, - .named = true, - }, - [sym_enable_extension_name] = { - .visible = true, - .named = true, - }, - [sym_software_extension_name] = { - .visible = true, - .named = true, - }, - [sym_severity_control_name] = { - .visible = true, - .named = true, - }, - [sym_swizzle_name] = { - .visible = true, - .named = true, - }, - [aux_sym_translation_unit_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_translation_unit_repeat2] = { - .visible = false, - .named = false, - }, - [aux_sym_template_arg_comma_list_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_struct_body_decl_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_struct_member_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_expression_comma_list_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_compound_statement_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_if_statement_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_switch_body_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_case_selectors_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_param_list_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_enable_extension_list_repeat1] = { - .visible = false, - .named = false, - }, - [aux_sym_software_extension_list_repeat1] = { - .visible = false, - .named = false, - }, -}; - -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] = 5, - [6] = 6, - [7] = 7, - [8] = 8, - [9] = 9, - [10] = 10, - [11] = 11, - [12] = 12, - [13] = 13, - [14] = 14, - [15] = 15, - [16] = 16, - [17] = 17, - [18] = 18, - [19] = 19, - [20] = 20, - [21] = 21, - [22] = 20, - [23] = 20, - [24] = 24, - [25] = 24, - [26] = 24, - [27] = 24, - [28] = 20, - [29] = 24, - [30] = 24, - [31] = 31, - [32] = 24, - [33] = 24, - [34] = 20, - [35] = 20, - [36] = 20, - [37] = 20, - [38] = 24, - [39] = 39, - [40] = 24, - [41] = 20, - [42] = 20, - [43] = 43, - [44] = 44, - [45] = 45, - [46] = 46, - [47] = 47, - [48] = 48, - [49] = 49, - [50] = 50, - [51] = 51, - [52] = 51, - [53] = 53, - [54] = 54, - [55] = 55, - [56] = 53, - [57] = 57, - [58] = 53, - [59] = 51, - [60] = 53, - [61] = 61, - [62] = 62, - [63] = 63, - [64] = 64, - [65] = 65, - [66] = 66, - [67] = 51, - [68] = 68, - [69] = 51, - [70] = 70, - [71] = 71, - [72] = 72, - [73] = 73, - [74] = 74, - [75] = 75, - [76] = 51, - [77] = 53, - [78] = 53, - [79] = 51, - [80] = 80, - [81] = 53, - [82] = 51, - [83] = 53, - [84] = 84, - [85] = 85, - [86] = 86, - [87] = 87, - [88] = 88, - [89] = 53, - [90] = 90, - [91] = 51, - [92] = 92, - [93] = 51, - [94] = 94, - [95] = 53, - [96] = 51, - [97] = 97, - [98] = 98, - [99] = 98, - [100] = 97, - [101] = 101, - [102] = 102, - [103] = 103, - [104] = 103, - [105] = 105, - [106] = 103, - [107] = 103, - [108] = 108, - [109] = 108, - [110] = 108, - [111] = 108, - [112] = 108, - [113] = 108, - [114] = 114, - [115] = 114, - [116] = 114, - [117] = 114, - [118] = 118, - [119] = 119, - [120] = 118, - [121] = 114, - [122] = 114, - [123] = 119, - [124] = 114, - [125] = 114, - [126] = 118, - [127] = 118, - [128] = 119, - [129] = 119, - [130] = 130, - [131] = 131, - [132] = 132, - [133] = 119, - [134] = 114, - [135] = 130, - [136] = 131, - [137] = 132, - [138] = 114, - [139] = 118, - [140] = 118, - [141] = 119, - [142] = 142, - [143] = 143, - [144] = 144, - [145] = 145, - [146] = 146, - [147] = 147, - [148] = 148, - [149] = 149, - [150] = 150, - [151] = 151, - [152] = 152, - [153] = 153, - [154] = 154, - [155] = 155, - [156] = 156, - [157] = 157, - [158] = 158, - [159] = 159, - [160] = 153, - [161] = 161, - [162] = 162, - [163] = 163, - [164] = 164, - [165] = 165, - [166] = 166, - [167] = 167, - [168] = 168, - [169] = 161, - [170] = 170, - [171] = 171, - [172] = 172, - [173] = 173, - [174] = 174, - [175] = 175, - [176] = 176, - [177] = 177, - [178] = 145, - [179] = 179, - [180] = 180, - [181] = 181, - [182] = 182, - [183] = 183, - [184] = 184, - [185] = 145, - [186] = 186, - [187] = 187, - [188] = 147, - [189] = 147, - [190] = 190, - [191] = 191, - [192] = 192, - [193] = 193, - [194] = 194, - [195] = 151, - [196] = 196, - [197] = 197, - [198] = 198, - [199] = 199, - [200] = 145, - [201] = 201, - [202] = 202, - [203] = 203, - [204] = 204, - [205] = 205, - [206] = 206, - [207] = 151, - [208] = 208, - [209] = 148, - [210] = 210, - [211] = 211, - [212] = 212, - [213] = 149, - [214] = 214, - [215] = 152, - [216] = 216, - [217] = 150, - [218] = 218, - [219] = 219, - [220] = 220, - [221] = 150, - [222] = 222, - [223] = 223, - [224] = 152, - [225] = 225, - [226] = 226, - [227] = 227, - [228] = 149, - [229] = 229, - [230] = 230, - [231] = 231, - [232] = 232, - [233] = 148, - [234] = 234, - [235] = 235, - [236] = 156, - [237] = 159, - [238] = 238, - [239] = 239, - [240] = 240, - [241] = 241, - [242] = 173, - [243] = 164, - [244] = 163, - [245] = 162, - [246] = 246, - [247] = 174, - [248] = 248, - [249] = 157, - [250] = 155, - [251] = 148, - [252] = 161, - [253] = 253, - [254] = 254, - [255] = 255, - [256] = 256, - [257] = 161, - [258] = 155, - [259] = 259, - [260] = 158, - [261] = 261, - [262] = 165, - [263] = 153, - [264] = 264, - [265] = 166, - [266] = 159, - [267] = 153, - [268] = 165, - [269] = 154, - [270] = 154, - [271] = 158, - [272] = 156, - [273] = 157, - [274] = 162, - [275] = 275, - [276] = 163, - [277] = 277, - [278] = 164, - [279] = 173, - [280] = 166, - [281] = 281, - [282] = 174, - [283] = 283, - [284] = 284, - [285] = 285, - [286] = 145, - [287] = 287, - [288] = 288, - [289] = 289, - [290] = 290, - [291] = 291, - [292] = 292, - [293] = 150, - [294] = 182, - [295] = 145, - [296] = 296, - [297] = 147, - [298] = 298, - [299] = 184, - [300] = 300, - [301] = 301, - [302] = 147, - [303] = 303, - [304] = 181, - [305] = 181, - [306] = 182, - [307] = 184, - [308] = 183, - [309] = 180, - [310] = 179, - [311] = 180, - [312] = 183, - [313] = 148, - [314] = 152, - [315] = 149, - [316] = 150, - [317] = 152, - [318] = 151, - [319] = 145, - [320] = 149, - [321] = 147, - [322] = 151, - [323] = 156, - [324] = 173, - [325] = 165, - [326] = 155, - [327] = 327, - [328] = 159, - [329] = 153, - [330] = 330, - [331] = 159, - [332] = 154, - [333] = 147, - [334] = 149, - [335] = 335, - [336] = 157, - [337] = 158, - [338] = 163, - [339] = 166, - [340] = 162, - [341] = 341, - [342] = 161, - [343] = 155, - [344] = 150, - [345] = 174, - [346] = 166, - [347] = 173, - [348] = 164, - [349] = 163, - [350] = 162, - [351] = 157, - [352] = 156, - [353] = 164, - [354] = 174, - [355] = 148, - [356] = 152, - [357] = 158, - [358] = 154, - [359] = 165, - [360] = 151, - [361] = 163, - [362] = 165, - [363] = 363, - [364] = 156, - [365] = 158, - [366] = 159, - [367] = 153, - [368] = 368, - [369] = 240, - [370] = 155, - [371] = 154, - [372] = 157, - [373] = 152, - [374] = 162, - [375] = 148, - [376] = 150, - [377] = 161, - [378] = 174, - [379] = 151, - [380] = 164, - [381] = 149, - [382] = 173, - [383] = 383, - [384] = 166, - [385] = 184, - [386] = 174, - [387] = 182, - [388] = 283, - [389] = 152, - [390] = 154, - [391] = 157, - [392] = 151, - [393] = 162, - [394] = 163, - [395] = 164, - [396] = 153, - [397] = 287, - [398] = 173, - [399] = 166, - [400] = 155, - [401] = 165, - [402] = 161, - [403] = 180, - [404] = 184, - [405] = 145, - [406] = 406, - [407] = 159, - [408] = 183, - [409] = 182, - [410] = 181, - [411] = 156, - [412] = 181, - [413] = 240, - [414] = 158, - [415] = 183, - [416] = 180, - [417] = 145, - [418] = 156, - [419] = 182, - [420] = 301, - [421] = 283, - [422] = 184, - [423] = 423, - [424] = 303, - [425] = 147, - [426] = 287, - [427] = 158, - [428] = 240, - [429] = 183, - [430] = 430, - [431] = 181, - [432] = 432, - [433] = 433, - [434] = 180, - [435] = 147, - [436] = 183, - [437] = 437, - [438] = 150, - [439] = 423, - [440] = 149, - [441] = 184, - [442] = 152, - [443] = 180, - [444] = 152, - [445] = 150, - [446] = 148, - [447] = 287, - [448] = 182, - [449] = 145, - [450] = 283, - [451] = 151, - [452] = 151, - [453] = 303, - [454] = 301, - [455] = 181, - [456] = 148, - [457] = 149, - [458] = 153, - [459] = 335, - [460] = 162, - [461] = 166, - [462] = 462, - [463] = 463, - [464] = 163, - [465] = 154, - [466] = 147, - [467] = 157, - [468] = 173, - [469] = 155, - [470] = 166, - [471] = 161, - [472] = 158, - [473] = 473, - [474] = 162, - [475] = 156, - [476] = 476, - [477] = 174, - [478] = 159, - [479] = 479, - [480] = 174, - [481] = 157, - [482] = 164, - [483] = 184, - [484] = 164, - [485] = 173, - [486] = 161, - [487] = 158, - [488] = 159, - [489] = 155, - [490] = 490, - [491] = 165, - [492] = 182, - [493] = 163, - [494] = 153, - [495] = 165, - [496] = 154, - [497] = 156, - [498] = 148, - [499] = 150, - [500] = 151, - [501] = 501, - [502] = 502, - [503] = 335, - [504] = 149, - [505] = 152, - [506] = 183, - [507] = 507, - [508] = 508, - [509] = 508, - [510] = 510, - [511] = 164, - [512] = 512, - [513] = 513, - [514] = 514, - [515] = 515, - [516] = 508, - [517] = 508, - [518] = 508, - [519] = 508, - [520] = 520, - [521] = 521, - [522] = 508, - [523] = 523, - [524] = 184, - [525] = 525, - [526] = 526, - [527] = 527, - [528] = 528, - [529] = 529, - [530] = 530, - [531] = 531, - [532] = 532, - [533] = 533, - [534] = 534, - [535] = 535, - [536] = 182, - [537] = 537, - [538] = 538, - [539] = 539, - [540] = 184, - [541] = 155, - [542] = 174, - [543] = 181, - [544] = 182, - [545] = 545, - [546] = 546, - [547] = 240, - [548] = 166, - [549] = 173, - [550] = 508, - [551] = 508, - [552] = 163, - [553] = 508, - [554] = 554, - [555] = 162, - [556] = 157, - [557] = 180, - [558] = 558, - [559] = 154, - [560] = 508, - [561] = 180, - [562] = 183, - [563] = 563, - [564] = 159, - [565] = 335, - [566] = 566, - [567] = 567, - [568] = 568, - [569] = 158, - [570] = 153, - [571] = 181, - [572] = 156, - [573] = 573, - [574] = 165, - [575] = 575, - [576] = 576, - [577] = 161, - [578] = 578, - [579] = 579, - [580] = 433, - [581] = 283, - [582] = 582, - [583] = 583, - [584] = 584, - [585] = 585, - [586] = 423, - [587] = 240, - [588] = 588, - [589] = 287, - [590] = 590, - [591] = 301, - [592] = 303, - [593] = 283, - [594] = 423, - [595] = 181, - [596] = 182, - [597] = 597, - [598] = 184, - [599] = 599, - [600] = 287, - [601] = 183, - [602] = 180, - [603] = 433, - [604] = 604, - [605] = 605, - [606] = 606, - [607] = 607, - [608] = 608, - [609] = 609, - [610] = 610, - [611] = 609, - [612] = 335, - [613] = 613, - [614] = 614, - [615] = 615, - [616] = 610, - [617] = 617, - [618] = 335, - [619] = 619, - [620] = 620, - [621] = 621, - [622] = 622, - [623] = 623, - [624] = 624, - [625] = 625, - [626] = 626, - [627] = 627, - [628] = 599, - [629] = 629, - [630] = 630, - [631] = 631, - [632] = 433, - [633] = 633, - [634] = 406, - [635] = 597, - [636] = 636, - [637] = 637, - [638] = 638, - [639] = 639, - [640] = 640, - [641] = 641, - [642] = 642, - [643] = 608, - [644] = 607, - [645] = 606, - [646] = 605, - [647] = 604, - [648] = 648, - [649] = 649, - [650] = 650, - [651] = 651, - [652] = 652, - [653] = 653, - [654] = 654, - [655] = 655, - [656] = 656, - [657] = 657, - [658] = 658, - [659] = 659, - [660] = 660, - [661] = 661, - [662] = 662, - [663] = 663, - [664] = 664, - [665] = 665, - [666] = 666, - [667] = 667, - [668] = 668, - [669] = 669, - [670] = 670, - [671] = 671, - [672] = 672, - [673] = 673, - [674] = 674, - [675] = 675, - [676] = 432, - [677] = 430, - [678] = 678, - [679] = 679, - [680] = 680, - [681] = 681, - [682] = 682, - [683] = 683, - [684] = 684, - [685] = 685, - [686] = 686, - [687] = 687, - [688] = 688, - [689] = 689, - [690] = 690, - [691] = 691, - [692] = 692, - [693] = 693, - [694] = 694, - [695] = 695, - [696] = 696, - [697] = 697, - [698] = 698, - [699] = 699, - [700] = 700, - [701] = 701, - [702] = 702, - [703] = 703, - [704] = 704, - [705] = 705, - [706] = 706, - [707] = 707, - [708] = 708, - [709] = 709, - [710] = 710, - [711] = 711, - [712] = 712, - [713] = 713, - [714] = 714, - [715] = 715, - [716] = 716, - [717] = 717, - [718] = 718, - [719] = 719, - [720] = 720, - [721] = 721, - [722] = 722, - [723] = 723, - [724] = 724, - [725] = 725, - [726] = 726, - [727] = 727, - [728] = 728, - [729] = 729, - [730] = 730, - [731] = 731, - [732] = 732, - [733] = 733, - [734] = 734, - [735] = 735, - [736] = 736, - [737] = 737, - [738] = 738, - [739] = 739, - [740] = 740, - [741] = 741, - [742] = 742, - [743] = 743, - [744] = 615, - [745] = 745, - [746] = 746, - [747] = 747, - [748] = 748, - [749] = 749, - [750] = 750, - [751] = 751, - [752] = 752, - [753] = 753, - [754] = 754, - [755] = 755, - [756] = 756, - [757] = 757, - [758] = 758, - [759] = 759, - [760] = 760, - [761] = 761, - [762] = 762, - [763] = 763, - [764] = 750, - [765] = 765, - [766] = 766, - [767] = 767, - [768] = 768, - [769] = 769, - [770] = 770, - [771] = 771, - [772] = 772, - [773] = 773, - [774] = 774, - [775] = 775, - [776] = 776, - [777] = 762, - [778] = 758, - [779] = 757, - [780] = 754, - [781] = 753, - [782] = 750, - [783] = 783, - [784] = 767, - [785] = 785, - [786] = 786, - [787] = 787, - [788] = 788, - [789] = 762, - [790] = 758, - [791] = 757, - [792] = 750, - [793] = 793, - [794] = 767, - [795] = 795, - [796] = 796, - [797] = 797, - [798] = 798, - [799] = 762, - [800] = 758, - [801] = 757, - [802] = 750, - [803] = 803, - [804] = 767, - [805] = 805, - [806] = 806, - [807] = 807, - [808] = 808, - [809] = 762, - [810] = 758, - [811] = 757, - [812] = 750, - [813] = 813, - [814] = 767, - [815] = 815, - [816] = 767, - [817] = 817, - [818] = 818, - [819] = 762, - [820] = 758, - [821] = 757, - [822] = 822, - [823] = 823, - [824] = 767, - [825] = 825, - [826] = 762, - [827] = 758, - [828] = 757, - [829] = 750, - [830] = 830, - [831] = 767, - [832] = 832, - [833] = 762, - [834] = 758, - [835] = 757, - [836] = 750, - [837] = 837, - [838] = 767, - [839] = 839, - [840] = 762, - [841] = 758, - [842] = 757, - [843] = 750, - [844] = 844, - [845] = 767, - [846] = 846, - [847] = 762, - [848] = 758, - [849] = 757, - [850] = 850, - [851] = 757, - [852] = 852, - [853] = 853, - [854] = 854, - [855] = 855, - [856] = 856, - [857] = 857, - [858] = 858, - [859] = 859, - [860] = 855, - [861] = 854, - [862] = 853, - [863] = 766, - [864] = 765, - [865] = 750, - [866] = 866, - [867] = 867, - [868] = 868, - [869] = 869, - [870] = 870, - [871] = 763, - [872] = 872, - [873] = 873, - [874] = 874, - [875] = 875, - [876] = 876, - [877] = 877, - [878] = 878, - [879] = 879, - [880] = 880, - [881] = 881, - [882] = 882, - [883] = 883, - [884] = 884, - [885] = 885, - [886] = 886, - [887] = 887, - [888] = 888, - [889] = 889, - [890] = 890, - [891] = 891, - [892] = 892, - [893] = 893, - [894] = 625, - [895] = 462, -}; - -static TSCharacterRange sym_ident_pattern_token_character_set_1[] = { - {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, - {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x370, 0x374}, {0x376, 0x377}, {0x37b, 0x37d}, - {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x48a, 0x52f}, - {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x620, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, - {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x7a5}, - {0x7b1, 0x7b1}, {0x7ca, 0x7ea}, {0x7f4, 0x7f5}, {0x7fa, 0x7fa}, {0x800, 0x815}, {0x81a, 0x81a}, {0x824, 0x824}, {0x828, 0x828}, - {0x840, 0x858}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x8a0, 0x8c9}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, - {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, - {0x9bd, 0x9bd}, {0x9ce, 0x9ce}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0x9fc, 0x9fc}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, - {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, - {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, - {0xae0, 0xae1}, {0xaf9, 0xaf9}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, - {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, - {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbd0, 0xbd0}, {0xc05, 0xc0c}, - {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3d, 0xc3d}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc61}, {0xc80, 0xc80}, - {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcdd, 0xcde}, {0xce0, 0xce1}, - {0xcf1, 0xcf2}, {0xd04, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd3a}, {0xd3d, 0xd3d}, {0xd4e, 0xd4e}, {0xd54, 0xd56}, {0xd5f, 0xd61}, - {0xd7a, 0xd7f}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe32}, - {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xeb0}, {0xeb2, 0xeb2}, - {0xebd, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6c}, {0xf88, 0xf8c}, - {0x1000, 0x102a}, {0x103f, 0x103f}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, - {0x108e, 0x108e}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, - {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, - {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, - {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1711}, {0x171f, 0x1731}, {0x1740, 0x1751}, - {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1878}, {0x1880, 0x18a8}, {0x18aa, 0x18aa}, - {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, - {0x1aa7, 0x1aa7}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4c}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, - {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, {0x1cfa, 0x1cfa}, - {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, - {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, - {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x2102, 0x2102}, - {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, - {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, - {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, - {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x3005, 0x3007}, {0x3021, 0x3029}, {0x3031, 0x3035}, - {0x3038, 0x303c}, {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, - {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, - {0xa67f, 0xa69d}, {0xa6a0, 0xa6ef}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, - {0xa7f2, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fb, 0xa8fb}, - {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9cf, 0xa9cf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, - {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7a, 0xaa7a}, {0xaa7e, 0xaaaf}, {0xaab1, 0xaab1}, - {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaac0, 0xaac0}, {0xaac2, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, - {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabe2}, {0xac00, 0xd7a3}, - {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, - {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, - {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, - {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xff9d}, {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, - {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, - {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x10375}, {0x10380, 0x1039d}, - {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, - {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, - {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, - {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, - {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, - {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, - {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10e80, 0x10ea9}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27}, - {0x10f30, 0x10f45}, {0x10f70, 0x10f81}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11003, 0x11037}, {0x11071, 0x11072}, {0x11075, 0x11075}, {0x11083, 0x110af}, - {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, - {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, - {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, - {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, - {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a}, - {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192f}, - {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32}, - {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40}, - {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, - {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342e}, - {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, - {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, - {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b150, 0x1b152}, {0x1b164, 0x1b167}, - {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, - {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, - {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, - {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, - {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ad}, - {0x1e2c0, 0x1e2eb}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, - {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, - {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, - {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, - {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, - {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b738}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, -}; - -static TSCharacterRange sym_ident_pattern_token_character_set_2[] = { - {'0', '9'}, {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xb7, 0xb7}, {0xba, 0xba}, - {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x300, 0x374}, - {0x376, 0x377}, {0x37b, 0x37d}, {0x37f, 0x37f}, {0x386, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, - {0x483, 0x487}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x591, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, - {0x5c4, 0x5c5}, {0x5c7, 0x5c7}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x610, 0x61a}, {0x620, 0x669}, {0x66e, 0x6d3}, {0x6d5, 0x6dc}, - {0x6df, 0x6e8}, {0x6ea, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x74a}, {0x74d, 0x7b1}, {0x7c0, 0x7f5}, {0x7fa, 0x7fa}, {0x7fd, 0x7fd}, - {0x800, 0x82d}, {0x840, 0x85b}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x898, 0x8e1}, {0x8e3, 0x963}, {0x966, 0x96f}, - {0x971, 0x983}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bc, 0x9c4}, - {0x9c7, 0x9c8}, {0x9cb, 0x9ce}, {0x9d7, 0x9d7}, {0x9dc, 0x9dd}, {0x9df, 0x9e3}, {0x9e6, 0x9f1}, {0x9fc, 0x9fc}, {0x9fe, 0x9fe}, - {0xa01, 0xa03}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, - {0xa3c, 0xa3c}, {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa51, 0xa51}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa66, 0xa75}, - {0xa81, 0xa83}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabc, 0xac5}, - {0xac7, 0xac9}, {0xacb, 0xacd}, {0xad0, 0xad0}, {0xae0, 0xae3}, {0xae6, 0xaef}, {0xaf9, 0xaff}, {0xb01, 0xb03}, {0xb05, 0xb0c}, - {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3c, 0xb44}, {0xb47, 0xb48}, {0xb4b, 0xb4d}, - {0xb55, 0xb57}, {0xb5c, 0xb5d}, {0xb5f, 0xb63}, {0xb66, 0xb6f}, {0xb71, 0xb71}, {0xb82, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, - {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbbe, 0xbc2}, - {0xbc6, 0xbc8}, {0xbca, 0xbcd}, {0xbd0, 0xbd0}, {0xbd7, 0xbd7}, {0xbe6, 0xbef}, {0xc00, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, - {0xc2a, 0xc39}, {0xc3c, 0xc44}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc63}, - {0xc66, 0xc6f}, {0xc80, 0xc83}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbc, 0xcc4}, - {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, {0xcdd, 0xcde}, {0xce0, 0xce3}, {0xce6, 0xcef}, {0xcf1, 0xcf2}, {0xd00, 0xd0c}, - {0xd0e, 0xd10}, {0xd12, 0xd44}, {0xd46, 0xd48}, {0xd4a, 0xd4e}, {0xd54, 0xd57}, {0xd5f, 0xd63}, {0xd66, 0xd6f}, {0xd7a, 0xd7f}, - {0xd81, 0xd83}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xdca, 0xdca}, {0xdcf, 0xdd4}, - {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xde6, 0xdef}, {0xdf2, 0xdf3}, {0xe01, 0xe3a}, {0xe40, 0xe4e}, {0xe50, 0xe59}, {0xe81, 0xe82}, - {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xec8, 0xecd}, - {0xed0, 0xed9}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf18, 0xf19}, {0xf20, 0xf29}, {0xf35, 0xf35}, {0xf37, 0xf37}, {0xf39, 0xf39}, - {0xf3e, 0xf47}, {0xf49, 0xf6c}, {0xf71, 0xf84}, {0xf86, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x1000, 0x1049}, {0x1050, 0x109d}, - {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, - {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, - {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x135f}, {0x1369, 0x1371}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, - {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1715}, {0x171f, 0x1734}, - {0x1740, 0x1753}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17d3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dd}, {0x17e0, 0x17e9}, - {0x180b, 0x180d}, {0x180f, 0x1819}, {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1920, 0x192b}, {0x1930, 0x193b}, - {0x1946, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x1a00, 0x1a1b}, {0x1a20, 0x1a5e}, {0x1a60, 0x1a7c}, - {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, {0x1aa7, 0x1aa7}, {0x1ab0, 0x1abd}, {0x1abf, 0x1ace}, {0x1b00, 0x1b4c}, {0x1b50, 0x1b59}, {0x1b6b, 0x1b73}, - {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2}, - {0x1cd4, 0x1cfa}, {0x1d00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, - {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, - {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x203f, 0x2040}, {0x2054, 0x2054}, {0x2071, 0x2071}, {0x207f, 0x207f}, - {0x2090, 0x209c}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, {0x20e5, 0x20f0}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, - {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, - {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, - {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, - {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, {0x3099, 0x309a}, - {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, - {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, {0xa67f, 0xa6f1}, {0xa717, 0xa71f}, - {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, {0xa7f2, 0xa827}, {0xa82c, 0xa82c}, {0xa840, 0xa873}, - {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, {0xa8e0, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, {0xa980, 0xa9c0}, - {0xa9cf, 0xa9d9}, {0xa9e0, 0xa9fe}, {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa60, 0xaa76}, {0xaa7a, 0xaac2}, {0xaadb, 0xaadd}, - {0xaae0, 0xaaef}, {0xaaf2, 0xaaf6}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, - {0xab5c, 0xab69}, {0xab70, 0xabea}, {0xabec, 0xabed}, {0xabf0, 0xabf9}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, - {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, - {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe00, 0xfe0f}, - {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, - {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff3f, 0xff3f}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7}, - {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, - {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x101fd, 0x101fd}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x102e0, 0x102e0}, {0x10300, 0x1031f}, - {0x1032d, 0x1034a}, {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104a0, 0x104a9}, - {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, - {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, - {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, - {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, - {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, {0x10a60, 0x10a7c}, - {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, - {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, {0x10e80, 0x10ea9}, {0x10eab, 0x10eac}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, - {0x10f27, 0x10f27}, {0x10f30, 0x10f50}, {0x10f70, 0x10f85}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11000, 0x11046}, {0x11066, 0x11075}, {0x1107f, 0x110ba}, - {0x110c2, 0x110c2}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, {0x11100, 0x11134}, {0x11136, 0x1113f}, {0x11144, 0x11147}, {0x11150, 0x11173}, {0x11176, 0x11176}, - {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111ce, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x11237}, {0x1123e, 0x1123e}, {0x11280, 0x11286}, - {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, - {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, - {0x11350, 0x11350}, {0x11357, 0x11357}, {0x1135d, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11400, 0x1144a}, {0x11450, 0x11459}, {0x1145e, 0x11461}, - {0x11480, 0x114c5}, {0x114c7, 0x114c7}, {0x114d0, 0x114d9}, {0x11580, 0x115b5}, {0x115b8, 0x115c0}, {0x115d8, 0x115dd}, {0x11600, 0x11640}, {0x11644, 0x11644}, - {0x11650, 0x11659}, {0x11680, 0x116b8}, {0x116c0, 0x116c9}, {0x11700, 0x1171a}, {0x1171d, 0x1172b}, {0x11730, 0x11739}, {0x11740, 0x11746}, {0x11800, 0x1183a}, - {0x118a0, 0x118e9}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x11935}, {0x11937, 0x11938}, {0x1193b, 0x11943}, - {0x11950, 0x11959}, {0x119a0, 0x119a7}, {0x119aa, 0x119d7}, {0x119da, 0x119e1}, {0x119e3, 0x119e4}, {0x11a00, 0x11a3e}, {0x11a47, 0x11a47}, {0x11a50, 0x11a99}, - {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7}, - {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3a, 0x11d3a}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}, - {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef6}, {0x11fb0, 0x11fb0}, - {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, - {0x16a60, 0x16a69}, {0x16a70, 0x16abe}, {0x16ac0, 0x16ac9}, {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, {0x16b50, 0x16b59}, - {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f4f, 0x16f87}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe4}, - {0x16ff0, 0x16ff1}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, - {0x1b150, 0x1b152}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e}, - {0x1cf00, 0x1cf2d}, {0x1cf30, 0x1cf46}, {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, - {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, - {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, - {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, - {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, - {0x1da3b, 0x1da6c}, {0x1da75, 0x1da75}, {0x1da84, 0x1da84}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1df00, 0x1df1e}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, - {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e100, 0x1e12c}, {0x1e130, 0x1e13d}, {0x1e140, 0x1e149}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ae}, - {0x1e2c0, 0x1e2f9}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94b}, - {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, - {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, - {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, - {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, - {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1fbf0, 0x1fbf9}, {0x20000, 0x2a6df}, {0x2a700, 0x2b738}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, - {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0xe0100, 0xe01ef}, -}; - -static bool ts_lex(TSLexer *lexer, TSStateId state) { - START_LEXER(); - eof = lexer->eof(lexer); - switch (state) { - case 0: - if (eof) ADVANCE(32); - ADVANCE_MAP( - '!', 74, - '%', 84, - '&', 80, - '(', 62, - ')', 63, - '*', 77, - '+', 86, - ',', 60, - '-', 72, - '.', 59, - '/', 82, - '0', 35, - ':', 66, - ';', 33, - '=', 68, - '@', 61, - '[', 69, - ']', 70, - '^', 94, - '_', 95, - '{', 64, - '|', 91, - '}', 65, - '~', 75, - 'a', 109, - 'b', 109, - 'g', 109, - 'r', 109, - ); - if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(112); - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(37); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ' || - lookahead == 0x85 || - lookahead == 0x200e || - lookahead == 0x200f || - lookahead == 0x2028 || - lookahead == 0x2029) ADVANCE(115); - if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); - END_STATE(); - case 1: - ADVANCE_MAP( - '!', 9, - '%', 83, - '&', 79, - '(', 62, - ')', 63, - '*', 76, - '+', 85, - ',', 60, - '-', 71, - '.', 58, - '/', 81, - ':', 66, - ';', 33, - '=', 13, - '@', 61, - '[', 69, - ']', 70, - '^', 93, - '{', 64, - '|', 92, - ); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ' || - lookahead == 0x85 || - lookahead == 0x200e || - lookahead == 0x200f || - lookahead == 0x2028 || - lookahead == 0x2029) ADVANCE(115); - END_STATE(); - case 2: - ADVANCE_MAP( - '%', 83, - '&', 78, - '(', 62, - ')', 63, - '*', 76, - '+', 85, - ',', 60, - '-', 71, - '.', 58, - '/', 81, - ':', 66, - ';', 33, - '=', 67, - '@', 61, - '[', 69, - ']', 70, - '^', 93, - '_', 30, - '{', 64, - '|', 92, - '}', 65, - ); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ' || - lookahead == 0x85 || - lookahead == 0x200e || - lookahead == 0x200f || - lookahead == 0x2028 || - lookahead == 0x2029) ADVANCE(115); - if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); - END_STATE(); - case 3: - ADVANCE_MAP( - '%', 10, - '&', 11, - '(', 62, - '*', 12, - '+', 4, - '-', 5, - '.', 58, - '/', 8, - '=', 67, - '@', 61, - '[', 69, - '^', 14, - '{', 64, - '|', 15, - ); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ' || - lookahead == 0x85 || - lookahead == 0x200e || - lookahead == 0x200f || - lookahead == 0x2028 || - lookahead == 0x2029) ADVANCE(115); - END_STATE(); - case 4: - if (lookahead == '+') ADVANCE(104); - if (lookahead == '=') ADVANCE(96); - END_STATE(); - case 5: - if (lookahead == '-') ADVANCE(105); - if (lookahead == '=') ADVANCE(97); - if (lookahead == '>') ADVANCE(106); - END_STATE(); - case 6: - if (lookahead == '.') ADVANCE(46); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(16); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(6); - END_STATE(); - case 7: - if (lookahead == '.') ADVANCE(29); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(39); - END_STATE(); - case 8: - if (lookahead == '/') ADVANCE(114); - if (lookahead == '=') ADVANCE(99); - END_STATE(); - case 9: - if (lookahead == '=') ADVANCE(88); - END_STATE(); - case 10: - if (lookahead == '=') ADVANCE(100); - END_STATE(); - case 11: - if (lookahead == '=') ADVANCE(101); - END_STATE(); - case 12: - if (lookahead == '=') ADVANCE(98); - END_STATE(); - case 13: - if (lookahead == '=') ADVANCE(87); - END_STATE(); - case 14: - if (lookahead == '=') ADVANCE(103); - END_STATE(); - case 15: - if (lookahead == '=') ADVANCE(102); - END_STATE(); - case 16: - if (lookahead == '+' || - lookahead == '-') ADVANCE(23); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(49); - END_STATE(); - case 17: - if (lookahead == '+' || - lookahead == '-') ADVANCE(24); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(44); - END_STATE(); - case 18: - if (lookahead == '+' || - lookahead == '-') ADVANCE(25); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(47); - END_STATE(); - case 19: - if (lookahead == '+' || - lookahead == '-') ADVANCE(26); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57); - END_STATE(); - case 20: - if (lookahead == '+' || - lookahead == '-') ADVANCE(27); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(52); - END_STATE(); - case 21: - if (lookahead == '+' || - lookahead == '-') ADVANCE(28); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(55); - END_STATE(); - case 22: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); - END_STATE(); - case 23: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(49); - END_STATE(); - case 24: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(44); - END_STATE(); - case 25: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(47); - END_STATE(); - case 26: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57); - END_STATE(); - case 27: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(52); - END_STATE(); - case 28: - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(55); - END_STATE(); - case 29: - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); - END_STATE(); - case 30: - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); - END_STATE(); - case 31: - if (eof) ADVANCE(32); - ADVANCE_MAP( - '!', 73, - '%', 83, - '&', 78, - '(', 62, - ')', 63, - '*', 76, - '+', 85, - ',', 60, - '-', 71, - '.', 22, - '/', 81, - '0', 35, - ':', 66, - ';', 33, - '=', 67, - '@', 61, - ']', 70, - '^', 93, - '_', 95, - '{', 64, - '|', 92, - '}', 65, - '~', 75, - ); - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(37); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ' || - lookahead == 0x85 || - lookahead == 0x200e || - lookahead == 0x200f || - lookahead == 0x2028 || - lookahead == 0x2029) ADVANCE(115); - if (set_contains(sym_ident_pattern_token_character_set_1, 656, lookahead)) ADVANCE(113); - END_STATE(); - case 32: - ACCEPT_TOKEN(ts_builtin_sym_end); - END_STATE(); - case 33: - ACCEPT_TOKEN(anon_sym_SEMI); - END_STATE(); - case 34: - ACCEPT_TOKEN(aux_sym_decimal_int_literal_token1); - END_STATE(); - case 35: - ACCEPT_TOKEN(aux_sym_decimal_int_literal_token1); - ADVANCE_MAP( - '.', 46, - 'E', 16, - 'e', 16, - 'X', 7, - 'x', 7, - 'f', 40, - 'h', 40, - 'i', 34, - 'u', 34, - ); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(6); - END_STATE(); - case 36: - ACCEPT_TOKEN(aux_sym_decimal_int_literal_token2); - END_STATE(); - case 37: - ACCEPT_TOKEN(aux_sym_decimal_int_literal_token2); - if (lookahead == '.') ADVANCE(46); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(16); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(41); - if (lookahead == 'i' || - lookahead == 'u') ADVANCE(36); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(37); - END_STATE(); - case 38: - ACCEPT_TOKEN(sym_hex_int_literal); - END_STATE(); - case 39: - ACCEPT_TOKEN(sym_hex_int_literal); - if (lookahead == '.') ADVANCE(54); - if (lookahead == 'P' || - lookahead == 'p') ADVANCE(19); - if (lookahead == 'i' || - lookahead == 'u') ADVANCE(38); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(39); - END_STATE(); - case 40: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token1); - END_STATE(); - case 41: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token2); - END_STATE(); - case 42: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); - END_STATE(); - case 43: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(17); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(42); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); - END_STATE(); - case 44: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token3); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(42); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(44); - END_STATE(); - case 45: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); - END_STATE(); - case 46: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); - if (lookahead == 'E' || - lookahead == 'e') ADVANCE(18); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(45); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); - END_STATE(); - case 47: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token4); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(45); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(47); - END_STATE(); - case 48: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token5); - END_STATE(); - case 49: - ACCEPT_TOKEN(aux_sym_decimal_float_literal_token5); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(48); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(49); - END_STATE(); - case 50: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); - END_STATE(); - case 51: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); - if (lookahead == 'P' || - lookahead == 'p') ADVANCE(20); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); - END_STATE(); - case 52: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token1); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(50); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(52); - END_STATE(); - case 53: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); - END_STATE(); - case 54: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); - if (lookahead == 'P' || - lookahead == 'p') ADVANCE(21); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(51); - END_STATE(); - case 55: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token2); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(53); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(55); - END_STATE(); - case 56: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token3); - END_STATE(); - case 57: - ACCEPT_TOKEN(aux_sym_hex_float_literal_token3); - if (lookahead == 'f' || - lookahead == 'h') ADVANCE(56); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(57); - END_STATE(); - case 58: - ACCEPT_TOKEN(anon_sym_DOT); - END_STATE(); - case 59: - ACCEPT_TOKEN(anon_sym_DOT); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); - END_STATE(); - case 60: - ACCEPT_TOKEN(anon_sym_COMMA); - END_STATE(); - case 61: - ACCEPT_TOKEN(anon_sym_AT); - END_STATE(); - case 62: - ACCEPT_TOKEN(anon_sym_LPAREN); - END_STATE(); - case 63: - ACCEPT_TOKEN(anon_sym_RPAREN); - END_STATE(); - case 64: - ACCEPT_TOKEN(anon_sym_LBRACE); - END_STATE(); - case 65: - ACCEPT_TOKEN(anon_sym_RBRACE); - END_STATE(); - case 66: - ACCEPT_TOKEN(anon_sym_COLON); - END_STATE(); - case 67: - ACCEPT_TOKEN(anon_sym_EQ); - END_STATE(); - case 68: - ACCEPT_TOKEN(anon_sym_EQ); - if (lookahead == '=') ADVANCE(87); - END_STATE(); - case 69: - ACCEPT_TOKEN(anon_sym_LBRACK); - END_STATE(); - case 70: - ACCEPT_TOKEN(anon_sym_RBRACK); - END_STATE(); - case 71: - ACCEPT_TOKEN(anon_sym_DASH); - END_STATE(); - case 72: - ACCEPT_TOKEN(anon_sym_DASH); - if (lookahead == '=') ADVANCE(97); - if (lookahead == '>') ADVANCE(106); - END_STATE(); - case 73: - ACCEPT_TOKEN(anon_sym_BANG); - END_STATE(); - case 74: - ACCEPT_TOKEN(anon_sym_BANG); - if (lookahead == '=') ADVANCE(88); - END_STATE(); - case 75: - ACCEPT_TOKEN(anon_sym_TILDE); - END_STATE(); - case 76: - ACCEPT_TOKEN(anon_sym_STAR); - END_STATE(); - case 77: - ACCEPT_TOKEN(anon_sym_STAR); - if (lookahead == '=') ADVANCE(98); - END_STATE(); - case 78: - ACCEPT_TOKEN(anon_sym_AMP); - END_STATE(); - case 79: - ACCEPT_TOKEN(anon_sym_AMP); - if (lookahead == '&') ADVANCE(89); - END_STATE(); - case 80: - ACCEPT_TOKEN(anon_sym_AMP); - if (lookahead == '&') ADVANCE(89); - if (lookahead == '=') ADVANCE(101); - END_STATE(); - case 81: - ACCEPT_TOKEN(anon_sym_SLASH); - if (lookahead == '/') ADVANCE(114); - END_STATE(); - case 82: - ACCEPT_TOKEN(anon_sym_SLASH); - if (lookahead == '/') ADVANCE(114); - if (lookahead == '=') ADVANCE(99); - END_STATE(); - case 83: - ACCEPT_TOKEN(anon_sym_PERCENT); - END_STATE(); - case 84: - ACCEPT_TOKEN(anon_sym_PERCENT); - if (lookahead == '=') ADVANCE(100); - END_STATE(); - case 85: - ACCEPT_TOKEN(anon_sym_PLUS); - END_STATE(); - case 86: - ACCEPT_TOKEN(anon_sym_PLUS); - if (lookahead == '+') ADVANCE(104); - if (lookahead == '=') ADVANCE(96); - END_STATE(); - case 87: - ACCEPT_TOKEN(anon_sym_EQ_EQ); - END_STATE(); - case 88: - ACCEPT_TOKEN(anon_sym_BANG_EQ); - END_STATE(); - case 89: - ACCEPT_TOKEN(anon_sym_AMP_AMP); - END_STATE(); - case 90: - ACCEPT_TOKEN(anon_sym_PIPE_PIPE); - END_STATE(); - case 91: - ACCEPT_TOKEN(anon_sym_PIPE); - if (lookahead == '=') ADVANCE(102); - if (lookahead == '|') ADVANCE(90); - END_STATE(); - case 92: - ACCEPT_TOKEN(anon_sym_PIPE); - if (lookahead == '|') ADVANCE(90); - END_STATE(); - case 93: - ACCEPT_TOKEN(anon_sym_CARET); - END_STATE(); - case 94: - ACCEPT_TOKEN(anon_sym_CARET); - if (lookahead == '=') ADVANCE(103); - END_STATE(); - case 95: - ACCEPT_TOKEN(anon_sym__); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); - END_STATE(); - case 96: - ACCEPT_TOKEN(anon_sym_PLUS_EQ); - END_STATE(); - case 97: - ACCEPT_TOKEN(anon_sym_DASH_EQ); - END_STATE(); - case 98: - ACCEPT_TOKEN(anon_sym_STAR_EQ); - END_STATE(); - case 99: - ACCEPT_TOKEN(anon_sym_SLASH_EQ); - END_STATE(); - case 100: - ACCEPT_TOKEN(anon_sym_PERCENT_EQ); - END_STATE(); - case 101: - ACCEPT_TOKEN(anon_sym_AMP_EQ); - END_STATE(); - case 102: - ACCEPT_TOKEN(anon_sym_PIPE_EQ); - END_STATE(); - case 103: - ACCEPT_TOKEN(anon_sym_CARET_EQ); - END_STATE(); - case 104: - ACCEPT_TOKEN(anon_sym_PLUS_PLUS); - END_STATE(); - case 105: - ACCEPT_TOKEN(anon_sym_DASH_DASH); - END_STATE(); - case 106: - ACCEPT_TOKEN(anon_sym_DASH_GT); - END_STATE(); - case 107: - ACCEPT_TOKEN(sym_ident_pattern_token); - if (lookahead == 'a' || - lookahead == 'b' || - lookahead == 'g' || - lookahead == 'r') ADVANCE(113); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); - END_STATE(); - case 108: - ACCEPT_TOKEN(sym_ident_pattern_token); - if (lookahead == 'a' || - lookahead == 'b' || - lookahead == 'g' || - lookahead == 'r') ADVANCE(107); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); - END_STATE(); - case 109: - ACCEPT_TOKEN(sym_ident_pattern_token); - if (lookahead == 'a' || - lookahead == 'b' || - lookahead == 'g' || - lookahead == 'r') ADVANCE(108); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); - END_STATE(); - case 110: - ACCEPT_TOKEN(sym_ident_pattern_token); - if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(113); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); - END_STATE(); - case 111: - ACCEPT_TOKEN(sym_ident_pattern_token); - if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(110); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); - END_STATE(); - case 112: - ACCEPT_TOKEN(sym_ident_pattern_token); - if (('w' <= lookahead && lookahead <= 'z')) ADVANCE(111); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); - END_STATE(); - case 113: - ACCEPT_TOKEN(sym_ident_pattern_token); - if (set_contains(sym_ident_pattern_token_character_set_2, 763, lookahead)) ADVANCE(113); - END_STATE(); - case 114: - ACCEPT_TOKEN(sym__comment); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(114); - END_STATE(); - case 115: - ACCEPT_TOKEN(sym__blankspace); - END_STATE(); - default: - return false; - } -} - -static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { - START_LEXER(); - eof = lexer->eof(lexer); - switch (state) { - case 0: - ADVANCE_MAP( - 'a', 1, - 'b', 2, - 'c', 3, - 'd', 4, - 'e', 5, - 'f', 6, - 'g', 7, - 'i', 8, - 'l', 9, - 'm', 10, - 'o', 11, - 'r', 12, - 's', 13, - 't', 14, - 'v', 15, - 'w', 16, - ); - END_STATE(); - case 1: - if (lookahead == 'l') ADVANCE(17); - END_STATE(); - case 2: - if (lookahead == 'i') ADVANCE(18); - if (lookahead == 'l') ADVANCE(19); - if (lookahead == 'r') ADVANCE(20); - if (lookahead == 'u') ADVANCE(21); - END_STATE(); - case 3: - if (lookahead == 'a') ADVANCE(22); - if (lookahead == 'o') ADVANCE(23); - END_STATE(); - case 4: - if (lookahead == 'e') ADVANCE(24); - if (lookahead == 'i') ADVANCE(25); - END_STATE(); - case 5: - if (lookahead == 'l') ADVANCE(26); - if (lookahead == 'n') ADVANCE(27); - END_STATE(); - case 6: - if (lookahead == 'a') ADVANCE(28); - if (lookahead == 'n') ADVANCE(29); - if (lookahead == 'o') ADVANCE(30); - if (lookahead == 'r') ADVANCE(31); - END_STATE(); - case 7: - if (lookahead == 'r') ADVANCE(32); - END_STATE(); - case 8: - if (lookahead == 'd') ADVANCE(33); - if (lookahead == 'f') ADVANCE(34); - if (lookahead == 'n') ADVANCE(35); - END_STATE(); - case 9: - if (lookahead == 'e') ADVANCE(36); - if (lookahead == 'o') ADVANCE(37); - END_STATE(); - case 10: - if (lookahead == 'u') ADVANCE(38); - END_STATE(); - case 11: - if (lookahead == 'v') ADVANCE(39); - END_STATE(); - case 12: - if (lookahead == 'e') ADVANCE(40); - END_STATE(); - case 13: - if (lookahead == 'i') ADVANCE(41); - if (lookahead == 't') ADVANCE(42); - if (lookahead == 'w') ADVANCE(43); - END_STATE(); - case 14: - if (lookahead == 'r') ADVANCE(44); - END_STATE(); - case 15: - if (lookahead == 'a') ADVANCE(45); - if (lookahead == 'e') ADVANCE(46); - END_STATE(); - case 16: - if (lookahead == 'h') ADVANCE(47); - if (lookahead == 'o') ADVANCE(48); - END_STATE(); - case 17: - if (lookahead == 'i') ADVANCE(49); - END_STATE(); - case 18: - if (lookahead == 'n') ADVANCE(50); - END_STATE(); - case 19: - if (lookahead == 'e') ADVANCE(51); - END_STATE(); - case 20: - if (lookahead == 'e') ADVANCE(52); - END_STATE(); - case 21: - if (lookahead == 'i') ADVANCE(53); - END_STATE(); - case 22: - if (lookahead == 's') ADVANCE(54); - END_STATE(); - case 23: - if (lookahead == 'm') ADVANCE(55); - if (lookahead == 'n') ADVANCE(56); - END_STATE(); - case 24: - if (lookahead == 'f') ADVANCE(57); - END_STATE(); - case 25: - if (lookahead == 'a') ADVANCE(58); - if (lookahead == 's') ADVANCE(59); - END_STATE(); - case 26: - if (lookahead == 's') ADVANCE(60); - END_STATE(); - case 27: - if (lookahead == 'a') ADVANCE(61); - END_STATE(); - case 28: - if (lookahead == 'l') ADVANCE(62); - END_STATE(); - case 29: - ACCEPT_TOKEN(anon_sym_fn); - END_STATE(); - case 30: - if (lookahead == 'r') ADVANCE(63); - END_STATE(); - case 31: - if (lookahead == 'a') ADVANCE(64); - END_STATE(); - case 32: - if (lookahead == 'o') ADVANCE(65); - END_STATE(); - case 33: - ACCEPT_TOKEN(anon_sym_id); - END_STATE(); - case 34: - ACCEPT_TOKEN(anon_sym_if); - END_STATE(); - case 35: - if (lookahead == 't') ADVANCE(66); - if (lookahead == 'v') ADVANCE(67); - END_STATE(); - case 36: - if (lookahead == 't') ADVANCE(68); - END_STATE(); - case 37: - if (lookahead == 'c') ADVANCE(69); - if (lookahead == 'o') ADVANCE(70); - END_STATE(); - case 38: - if (lookahead == 's') ADVANCE(71); - END_STATE(); - case 39: - if (lookahead == 'e') ADVANCE(72); - END_STATE(); - case 40: - if (lookahead == 'q') ADVANCE(73); - if (lookahead == 't') ADVANCE(74); - END_STATE(); - case 41: - if (lookahead == 'z') ADVANCE(75); - END_STATE(); - case 42: - if (lookahead == 'r') ADVANCE(76); - END_STATE(); - case 43: - if (lookahead == 'i') ADVANCE(77); - END_STATE(); - case 44: - if (lookahead == 'u') ADVANCE(78); - END_STATE(); - case 45: - if (lookahead == 'r') ADVANCE(79); - END_STATE(); - case 46: - if (lookahead == 'r') ADVANCE(80); - END_STATE(); - case 47: - if (lookahead == 'i') ADVANCE(81); - END_STATE(); - case 48: - if (lookahead == 'r') ADVANCE(82); - END_STATE(); - case 49: - if (lookahead == 'a') ADVANCE(83); - if (lookahead == 'g') ADVANCE(84); - END_STATE(); - case 50: - if (lookahead == 'd') ADVANCE(85); - END_STATE(); - case 51: - if (lookahead == 'n') ADVANCE(86); - END_STATE(); - case 52: - if (lookahead == 'a') ADVANCE(87); - END_STATE(); - case 53: - if (lookahead == 'l') ADVANCE(88); - END_STATE(); - case 54: - if (lookahead == 'e') ADVANCE(89); - END_STATE(); - case 55: - if (lookahead == 'p') ADVANCE(90); - END_STATE(); - case 56: - if (lookahead == 's') ADVANCE(91); - if (lookahead == 't') ADVANCE(92); - END_STATE(); - case 57: - if (lookahead == 'a') ADVANCE(93); - END_STATE(); - case 58: - if (lookahead == 'g') ADVANCE(94); - END_STATE(); - case 59: - if (lookahead == 'c') ADVANCE(95); - END_STATE(); - case 60: - if (lookahead == 'e') ADVANCE(96); - END_STATE(); - case 61: - if (lookahead == 'b') ADVANCE(97); - END_STATE(); - case 62: - if (lookahead == 's') ADVANCE(98); - END_STATE(); - case 63: - ACCEPT_TOKEN(anon_sym_for); - END_STATE(); - case 64: - if (lookahead == 'g') ADVANCE(99); - END_STATE(); - case 65: - if (lookahead == 'u') ADVANCE(100); - END_STATE(); - case 66: - if (lookahead == 'e') ADVANCE(101); - END_STATE(); - case 67: - if (lookahead == 'a') ADVANCE(102); - END_STATE(); - case 68: - ACCEPT_TOKEN(anon_sym_let); - END_STATE(); - case 69: - if (lookahead == 'a') ADVANCE(103); - END_STATE(); - case 70: - if (lookahead == 'p') ADVANCE(104); - END_STATE(); - case 71: - if (lookahead == 't') ADVANCE(105); - END_STATE(); - case 72: - if (lookahead == 'r') ADVANCE(106); - END_STATE(); - case 73: - if (lookahead == 'u') ADVANCE(107); - END_STATE(); - case 74: - if (lookahead == 'u') ADVANCE(108); - END_STATE(); - case 75: - if (lookahead == 'e') ADVANCE(109); - END_STATE(); - case 76: - if (lookahead == 'u') ADVANCE(110); - END_STATE(); - case 77: - if (lookahead == 't') ADVANCE(111); - END_STATE(); - case 78: - if (lookahead == 'e') ADVANCE(112); - END_STATE(); - case 79: - ACCEPT_TOKEN(anon_sym_var); - END_STATE(); - case 80: - if (lookahead == 't') ADVANCE(113); - END_STATE(); - case 81: - if (lookahead == 'l') ADVANCE(114); - END_STATE(); - case 82: - if (lookahead == 'k') ADVANCE(115); - END_STATE(); - case 83: - if (lookahead == 's') ADVANCE(116); - END_STATE(); - case 84: - if (lookahead == 'n') ADVANCE(117); - END_STATE(); - case 85: - if (lookahead == 'i') ADVANCE(118); - END_STATE(); - case 86: - if (lookahead == 'd') ADVANCE(119); - END_STATE(); - case 87: - if (lookahead == 'k') ADVANCE(120); - END_STATE(); - case 88: - if (lookahead == 't') ADVANCE(121); - END_STATE(); - case 89: - ACCEPT_TOKEN(anon_sym_case); - END_STATE(); - case 90: - if (lookahead == 'u') ADVANCE(122); - END_STATE(); - case 91: - if (lookahead == 't') ADVANCE(123); - END_STATE(); - case 92: - if (lookahead == 'i') ADVANCE(124); - END_STATE(); - case 93: - if (lookahead == 'u') ADVANCE(125); - END_STATE(); - case 94: - if (lookahead == 'n') ADVANCE(126); - END_STATE(); - case 95: - if (lookahead == 'a') ADVANCE(127); - END_STATE(); - case 96: - ACCEPT_TOKEN(anon_sym_else); - END_STATE(); - case 97: - if (lookahead == 'l') ADVANCE(128); - END_STATE(); - case 98: - if (lookahead == 'e') ADVANCE(129); - END_STATE(); - case 99: - if (lookahead == 'm') ADVANCE(130); - END_STATE(); - case 100: - if (lookahead == 'p') ADVANCE(131); - END_STATE(); - case 101: - if (lookahead == 'r') ADVANCE(132); - END_STATE(); - case 102: - if (lookahead == 'r') ADVANCE(133); - END_STATE(); - case 103: - if (lookahead == 't') ADVANCE(134); - END_STATE(); - case 104: - ACCEPT_TOKEN(anon_sym_loop); - END_STATE(); - case 105: - if (lookahead == '_') ADVANCE(135); - END_STATE(); - case 106: - if (lookahead == 'r') ADVANCE(136); - END_STATE(); - case 107: - if (lookahead == 'i') ADVANCE(137); - END_STATE(); - case 108: - if (lookahead == 'r') ADVANCE(138); - END_STATE(); - case 109: - ACCEPT_TOKEN(anon_sym_size); - END_STATE(); - case 110: - if (lookahead == 'c') ADVANCE(139); - END_STATE(); - case 111: - if (lookahead == 'c') ADVANCE(140); - END_STATE(); - case 112: - ACCEPT_TOKEN(anon_sym_true); - END_STATE(); - case 113: - if (lookahead == 'e') ADVANCE(141); - END_STATE(); - case 114: - if (lookahead == 'e') ADVANCE(142); - END_STATE(); - case 115: - if (lookahead == 'g') ADVANCE(143); - END_STATE(); - case 116: - ACCEPT_TOKEN(anon_sym_alias); - END_STATE(); - case 117: - ACCEPT_TOKEN(anon_sym_align); - END_STATE(); - case 118: - if (lookahead == 'n') ADVANCE(144); - END_STATE(); - case 119: - if (lookahead == '_') ADVANCE(145); - END_STATE(); - case 120: - ACCEPT_TOKEN(anon_sym_break); - END_STATE(); - case 121: - if (lookahead == 'i') ADVANCE(146); - END_STATE(); - case 122: - if (lookahead == 't') ADVANCE(147); - END_STATE(); - case 123: - ACCEPT_TOKEN(anon_sym_const); - if (lookahead == '_') ADVANCE(148); - END_STATE(); - case 124: - if (lookahead == 'n') ADVANCE(149); - END_STATE(); - case 125: - if (lookahead == 'l') ADVANCE(150); - END_STATE(); - case 126: - if (lookahead == 'o') ADVANCE(151); - END_STATE(); - case 127: - if (lookahead == 'r') ADVANCE(152); - END_STATE(); - case 128: - if (lookahead == 'e') ADVANCE(153); - END_STATE(); - case 129: - ACCEPT_TOKEN(anon_sym_false); - END_STATE(); - case 130: - if (lookahead == 'e') ADVANCE(154); - END_STATE(); - case 131: - ACCEPT_TOKEN(anon_sym_group); - END_STATE(); - case 132: - if (lookahead == 'p') ADVANCE(155); - END_STATE(); - case 133: - if (lookahead == 'i') ADVANCE(156); - END_STATE(); - case 134: - if (lookahead == 'i') ADVANCE(157); - END_STATE(); - case 135: - if (lookahead == 'u') ADVANCE(158); - END_STATE(); - case 136: - if (lookahead == 'i') ADVANCE(159); - END_STATE(); - case 137: - if (lookahead == 'r') ADVANCE(160); - END_STATE(); - case 138: - if (lookahead == 'n') ADVANCE(161); - END_STATE(); - case 139: - if (lookahead == 't') ADVANCE(162); - END_STATE(); - case 140: - if (lookahead == 'h') ADVANCE(163); - END_STATE(); - case 141: - if (lookahead == 'x') ADVANCE(164); - END_STATE(); - case 142: - ACCEPT_TOKEN(anon_sym_while); - END_STATE(); - case 143: - if (lookahead == 'r') ADVANCE(165); - END_STATE(); - case 144: - if (lookahead == 'g') ADVANCE(166); - END_STATE(); - case 145: - if (lookahead == 's') ADVANCE(167); - END_STATE(); - case 146: - if (lookahead == 'n') ADVANCE(168); - END_STATE(); - case 147: - if (lookahead == 'e') ADVANCE(169); - END_STATE(); - case 148: - if (lookahead == 'a') ADVANCE(170); - END_STATE(); - case 149: - if (lookahead == 'u') ADVANCE(171); - END_STATE(); - case 150: - if (lookahead == 't') ADVANCE(172); - END_STATE(); - case 151: - if (lookahead == 's') ADVANCE(173); - END_STATE(); - case 152: - if (lookahead == 'd') ADVANCE(174); - END_STATE(); - case 153: - ACCEPT_TOKEN(anon_sym_enable); - END_STATE(); - case 154: - if (lookahead == 'n') ADVANCE(175); - END_STATE(); - case 155: - if (lookahead == 'o') ADVANCE(176); - END_STATE(); - case 156: - if (lookahead == 'a') ADVANCE(177); - END_STATE(); - case 157: - if (lookahead == 'o') ADVANCE(178); - END_STATE(); - case 158: - if (lookahead == 's') ADVANCE(179); - END_STATE(); - case 159: - if (lookahead == 'd') ADVANCE(180); - END_STATE(); - case 160: - if (lookahead == 'e') ADVANCE(181); - END_STATE(); - case 161: - ACCEPT_TOKEN(anon_sym_return); - END_STATE(); - case 162: - ACCEPT_TOKEN(anon_sym_struct); - END_STATE(); - case 163: - ACCEPT_TOKEN(anon_sym_switch); - END_STATE(); - case 164: - ACCEPT_TOKEN(anon_sym_vertex); - END_STATE(); - case 165: - if (lookahead == 'o') ADVANCE(182); - END_STATE(); - case 166: - ACCEPT_TOKEN(anon_sym_binding); - END_STATE(); - case 167: - if (lookahead == 'r') ADVANCE(183); - END_STATE(); - case 168: - ACCEPT_TOKEN(anon_sym_builtin); - END_STATE(); - case 169: - ACCEPT_TOKEN(anon_sym_compute); - END_STATE(); - case 170: - if (lookahead == 's') ADVANCE(184); - END_STATE(); - case 171: - if (lookahead == 'e') ADVANCE(185); - if (lookahead == 'i') ADVANCE(186); - END_STATE(); - case 172: - ACCEPT_TOKEN(anon_sym_default); - END_STATE(); - case 173: - if (lookahead == 't') ADVANCE(187); - END_STATE(); - case 174: - ACCEPT_TOKEN(anon_sym_discard); - END_STATE(); - case 175: - if (lookahead == 't') ADVANCE(188); - END_STATE(); - case 176: - if (lookahead == 'l') ADVANCE(189); - END_STATE(); - case 177: - if (lookahead == 'n') ADVANCE(190); - END_STATE(); - case 178: - if (lookahead == 'n') ADVANCE(191); - END_STATE(); - case 179: - if (lookahead == 'e') ADVANCE(192); - END_STATE(); - case 180: - if (lookahead == 'e') ADVANCE(193); - END_STATE(); - case 181: - if (lookahead == 's') ADVANCE(194); - END_STATE(); - case 182: - if (lookahead == 'u') ADVANCE(195); - END_STATE(); - case 183: - if (lookahead == 'c') ADVANCE(196); - END_STATE(); - case 184: - if (lookahead == 's') ADVANCE(197); - END_STATE(); - case 185: - ACCEPT_TOKEN(sym_continue_statement); - END_STATE(); - case 186: - if (lookahead == 'n') ADVANCE(198); - END_STATE(); - case 187: - if (lookahead == 'i') ADVANCE(199); - END_STATE(); - case 188: - ACCEPT_TOKEN(anon_sym_fragment); - END_STATE(); - case 189: - if (lookahead == 'a') ADVANCE(200); - END_STATE(); - case 190: - if (lookahead == 't') ADVANCE(201); - END_STATE(); - case 191: - ACCEPT_TOKEN(anon_sym_location); - END_STATE(); - case 192: - ACCEPT_TOKEN(anon_sym_must_use); - END_STATE(); - case 193: - ACCEPT_TOKEN(anon_sym_override); - END_STATE(); - case 194: - ACCEPT_TOKEN(anon_sym_requires); - END_STATE(); - case 195: - if (lookahead == 'p') ADVANCE(202); - END_STATE(); - case 196: - ACCEPT_TOKEN(anon_sym_blend_src); - END_STATE(); - case 197: - if (lookahead == 'e') ADVANCE(203); - END_STATE(); - case 198: - if (lookahead == 'g') ADVANCE(204); - END_STATE(); - case 199: - if (lookahead == 'c') ADVANCE(205); - END_STATE(); - case 200: - if (lookahead == 't') ADVANCE(206); - END_STATE(); - case 201: - ACCEPT_TOKEN(anon_sym_invariant); - END_STATE(); - case 202: - if (lookahead == '_') ADVANCE(207); - END_STATE(); - case 203: - if (lookahead == 'r') ADVANCE(208); - END_STATE(); - case 204: - ACCEPT_TOKEN(anon_sym_continuing); - END_STATE(); - case 205: - ACCEPT_TOKEN(anon_sym_diagnostic); - END_STATE(); - case 206: - if (lookahead == 'e') ADVANCE(209); - END_STATE(); - case 207: - if (lookahead == 's') ADVANCE(210); - END_STATE(); - case 208: - if (lookahead == 't') ADVANCE(211); - END_STATE(); - case 209: - ACCEPT_TOKEN(anon_sym_interpolate); - END_STATE(); - case 210: - if (lookahead == 'i') ADVANCE(212); - END_STATE(); - case 211: - ACCEPT_TOKEN(anon_sym_const_assert); - END_STATE(); - case 212: - if (lookahead == 'z') ADVANCE(213); - END_STATE(); - case 213: - if (lookahead == 'e') ADVANCE(214); - END_STATE(); - case 214: - ACCEPT_TOKEN(anon_sym_workgroup_size); - END_STATE(); - default: - return false; - } -} - -static const TSLexMode ts_lex_modes[STATE_COUNT] = { - [0] = {.lex_state = 0, .external_lex_state = 1}, - [1] = {.lex_state = 0, .external_lex_state = 2}, - [2] = {.lex_state = 31, .external_lex_state = 2}, - [3] = {.lex_state = 31, .external_lex_state = 2}, - [4] = {.lex_state = 31, .external_lex_state = 2}, - [5] = {.lex_state = 31, .external_lex_state = 2}, - [6] = {.lex_state = 31, .external_lex_state = 2}, - [7] = {.lex_state = 31, .external_lex_state = 2}, - [8] = {.lex_state = 31, .external_lex_state = 2}, - [9] = {.lex_state = 31, .external_lex_state = 2}, - [10] = {.lex_state = 31, .external_lex_state = 2}, - [11] = {.lex_state = 31, .external_lex_state = 2}, - [12] = {.lex_state = 31, .external_lex_state = 2}, - [13] = {.lex_state = 31, .external_lex_state = 2}, - [14] = {.lex_state = 31, .external_lex_state = 2}, - [15] = {.lex_state = 31, .external_lex_state = 2}, - [16] = {.lex_state = 31, .external_lex_state = 2}, - [17] = {.lex_state = 31, .external_lex_state = 2}, - [18] = {.lex_state = 31, .external_lex_state = 2}, - [19] = {.lex_state = 31, .external_lex_state = 2}, - [20] = {.lex_state = 31, .external_lex_state = 2}, - [21] = {.lex_state = 31, .external_lex_state = 2}, - [22] = {.lex_state = 31, .external_lex_state = 2}, - [23] = {.lex_state = 31, .external_lex_state = 2}, - [24] = {.lex_state = 31, .external_lex_state = 2}, - [25] = {.lex_state = 31, .external_lex_state = 2}, - [26] = {.lex_state = 31, .external_lex_state = 2}, - [27] = {.lex_state = 31, .external_lex_state = 2}, - [28] = {.lex_state = 31, .external_lex_state = 2}, - [29] = {.lex_state = 31, .external_lex_state = 2}, - [30] = {.lex_state = 31, .external_lex_state = 2}, - [31] = {.lex_state = 31, .external_lex_state = 3}, - [32] = {.lex_state = 31, .external_lex_state = 2}, - [33] = {.lex_state = 31, .external_lex_state = 2}, - [34] = {.lex_state = 31, .external_lex_state = 2}, - [35] = {.lex_state = 31, .external_lex_state = 2}, - [36] = {.lex_state = 31, .external_lex_state = 2}, - [37] = {.lex_state = 31, .external_lex_state = 2}, - [38] = {.lex_state = 31, .external_lex_state = 2}, - [39] = {.lex_state = 31, .external_lex_state = 3}, - [40] = {.lex_state = 31, .external_lex_state = 2}, - [41] = {.lex_state = 31, .external_lex_state = 2}, - [42] = {.lex_state = 31, .external_lex_state = 2}, - [43] = {.lex_state = 31, .external_lex_state = 2}, - [44] = {.lex_state = 31, .external_lex_state = 2}, - [45] = {.lex_state = 31, .external_lex_state = 2}, - [46] = {.lex_state = 31, .external_lex_state = 2}, - [47] = {.lex_state = 31, .external_lex_state = 2}, - [48] = {.lex_state = 31, .external_lex_state = 2}, - [49] = {.lex_state = 31, .external_lex_state = 2}, - [50] = {.lex_state = 31, .external_lex_state = 2}, - [51] = {.lex_state = 31, .external_lex_state = 2}, - [52] = {.lex_state = 31, .external_lex_state = 2}, - [53] = {.lex_state = 31, .external_lex_state = 2}, - [54] = {.lex_state = 31, .external_lex_state = 2}, - [55] = {.lex_state = 0, .external_lex_state = 2}, - [56] = {.lex_state = 31, .external_lex_state = 2}, - [57] = {.lex_state = 31, .external_lex_state = 2}, - [58] = {.lex_state = 31, .external_lex_state = 2}, - [59] = {.lex_state = 31, .external_lex_state = 2}, - [60] = {.lex_state = 31, .external_lex_state = 2}, - [61] = {.lex_state = 31, .external_lex_state = 2}, - [62] = {.lex_state = 31, .external_lex_state = 2}, - [63] = {.lex_state = 31, .external_lex_state = 2}, - [64] = {.lex_state = 31, .external_lex_state = 2}, - [65] = {.lex_state = 31, .external_lex_state = 2}, - [66] = {.lex_state = 31, .external_lex_state = 2}, - [67] = {.lex_state = 31, .external_lex_state = 2}, - [68] = {.lex_state = 31, .external_lex_state = 2}, - [69] = {.lex_state = 31, .external_lex_state = 2}, - [70] = {.lex_state = 31, .external_lex_state = 2}, - [71] = {.lex_state = 31, .external_lex_state = 2}, - [72] = {.lex_state = 31, .external_lex_state = 2}, - [73] = {.lex_state = 31, .external_lex_state = 2}, - [74] = {.lex_state = 31, .external_lex_state = 2}, - [75] = {.lex_state = 31, .external_lex_state = 2}, - [76] = {.lex_state = 31, .external_lex_state = 2}, - [77] = {.lex_state = 31, .external_lex_state = 2}, - [78] = {.lex_state = 31, .external_lex_state = 2}, - [79] = {.lex_state = 31, .external_lex_state = 2}, - [80] = {.lex_state = 31, .external_lex_state = 2}, - [81] = {.lex_state = 31, .external_lex_state = 2}, - [82] = {.lex_state = 31, .external_lex_state = 2}, - [83] = {.lex_state = 31, .external_lex_state = 2}, - [84] = {.lex_state = 31, .external_lex_state = 2}, - [85] = {.lex_state = 31, .external_lex_state = 2}, - [86] = {.lex_state = 31, .external_lex_state = 2}, - [87] = {.lex_state = 31, .external_lex_state = 2}, - [88] = {.lex_state = 31, .external_lex_state = 2}, - [89] = {.lex_state = 31, .external_lex_state = 2}, - [90] = {.lex_state = 31, .external_lex_state = 2}, - [91] = {.lex_state = 31, .external_lex_state = 2}, - [92] = {.lex_state = 31, .external_lex_state = 2}, - [93] = {.lex_state = 31, .external_lex_state = 2}, - [94] = {.lex_state = 31, .external_lex_state = 2}, - [95] = {.lex_state = 31, .external_lex_state = 2}, - [96] = {.lex_state = 31, .external_lex_state = 2}, - [97] = {.lex_state = 31, .external_lex_state = 2}, - [98] = {.lex_state = 31, .external_lex_state = 2}, - [99] = {.lex_state = 31, .external_lex_state = 2}, - [100] = {.lex_state = 31, .external_lex_state = 2}, - [101] = {.lex_state = 0, .external_lex_state = 2}, - [102] = {.lex_state = 0, .external_lex_state = 2}, - [103] = {.lex_state = 31, .external_lex_state = 2}, - [104] = {.lex_state = 31, .external_lex_state = 2}, - [105] = {.lex_state = 0, .external_lex_state = 2}, - [106] = {.lex_state = 31, .external_lex_state = 2}, - [107] = {.lex_state = 31, .external_lex_state = 2}, - [108] = {.lex_state = 31, .external_lex_state = 2}, - [109] = {.lex_state = 31, .external_lex_state = 2}, - [110] = {.lex_state = 31, .external_lex_state = 2}, - [111] = {.lex_state = 31, .external_lex_state = 2}, - [112] = {.lex_state = 31, .external_lex_state = 2}, - [113] = {.lex_state = 31, .external_lex_state = 2}, - [114] = {.lex_state = 31, .external_lex_state = 2}, - [115] = {.lex_state = 31, .external_lex_state = 2}, - [116] = {.lex_state = 31, .external_lex_state = 2}, - [117] = {.lex_state = 31, .external_lex_state = 2}, - [118] = {.lex_state = 31, .external_lex_state = 2}, - [119] = {.lex_state = 31, .external_lex_state = 2}, - [120] = {.lex_state = 31, .external_lex_state = 2}, - [121] = {.lex_state = 31, .external_lex_state = 2}, - [122] = {.lex_state = 31, .external_lex_state = 2}, - [123] = {.lex_state = 31, .external_lex_state = 2}, - [124] = {.lex_state = 31, .external_lex_state = 2}, - [125] = {.lex_state = 31, .external_lex_state = 2}, - [126] = {.lex_state = 31, .external_lex_state = 2}, - [127] = {.lex_state = 31, .external_lex_state = 2}, - [128] = {.lex_state = 31, .external_lex_state = 2}, - [129] = {.lex_state = 31, .external_lex_state = 2}, - [130] = {.lex_state = 31, .external_lex_state = 2}, - [131] = {.lex_state = 31, .external_lex_state = 2}, - [132] = {.lex_state = 31, .external_lex_state = 2}, - [133] = {.lex_state = 31, .external_lex_state = 2}, - [134] = {.lex_state = 31, .external_lex_state = 2}, - [135] = {.lex_state = 31, .external_lex_state = 2}, - [136] = {.lex_state = 31, .external_lex_state = 2}, - [137] = {.lex_state = 31, .external_lex_state = 2}, - [138] = {.lex_state = 31, .external_lex_state = 2}, - [139] = {.lex_state = 31, .external_lex_state = 2}, - [140] = {.lex_state = 31, .external_lex_state = 2}, - [141] = {.lex_state = 31, .external_lex_state = 2}, - [142] = {.lex_state = 31, .external_lex_state = 2}, - [143] = {.lex_state = 31, .external_lex_state = 2}, - [144] = {.lex_state = 31, .external_lex_state = 2}, - [145] = {.lex_state = 1, .external_lex_state = 4}, - [146] = {.lex_state = 0, .external_lex_state = 2}, - [147] = {.lex_state = 1, .external_lex_state = 5}, - [148] = {.lex_state = 1, .external_lex_state = 5}, - [149] = {.lex_state = 1, .external_lex_state = 5}, - [150] = {.lex_state = 1, .external_lex_state = 5}, - [151] = {.lex_state = 1, .external_lex_state = 5}, - [152] = {.lex_state = 1, .external_lex_state = 5}, - [153] = {.lex_state = 1, .external_lex_state = 5}, - [154] = {.lex_state = 1, .external_lex_state = 5}, - [155] = {.lex_state = 1, .external_lex_state = 5}, - [156] = {.lex_state = 1, .external_lex_state = 5}, - [157] = {.lex_state = 1, .external_lex_state = 5}, - [158] = {.lex_state = 1, .external_lex_state = 5}, - [159] = {.lex_state = 1, .external_lex_state = 5}, - [160] = {.lex_state = 2, .external_lex_state = 2}, - [161] = {.lex_state = 1, .external_lex_state = 5}, - [162] = {.lex_state = 1, .external_lex_state = 5}, - [163] = {.lex_state = 1, .external_lex_state = 5}, - [164] = {.lex_state = 1, .external_lex_state = 5}, - [165] = {.lex_state = 1, .external_lex_state = 5}, - [166] = {.lex_state = 1, .external_lex_state = 5}, - [167] = {.lex_state = 31, .external_lex_state = 2}, - [168] = {.lex_state = 0, .external_lex_state = 2}, - [169] = {.lex_state = 2, .external_lex_state = 2}, - [170] = {.lex_state = 31, .external_lex_state = 2}, - [171] = {.lex_state = 31, .external_lex_state = 2}, - [172] = {.lex_state = 31, .external_lex_state = 2}, - [173] = {.lex_state = 1, .external_lex_state = 5}, - [174] = {.lex_state = 1, .external_lex_state = 5}, - [175] = {.lex_state = 31, .external_lex_state = 2}, - [176] = {.lex_state = 0, .external_lex_state = 2}, - [177] = {.lex_state = 0, .external_lex_state = 2}, - [178] = {.lex_state = 1, .external_lex_state = 6}, - [179] = {.lex_state = 1, .external_lex_state = 5}, - [180] = {.lex_state = 1, .external_lex_state = 5}, - [181] = {.lex_state = 1, .external_lex_state = 5}, - [182] = {.lex_state = 1, .external_lex_state = 5}, - [183] = {.lex_state = 1, .external_lex_state = 5}, - [184] = {.lex_state = 1, .external_lex_state = 5}, - [185] = {.lex_state = 1, .external_lex_state = 7}, - [186] = {.lex_state = 0, .external_lex_state = 2}, - [187] = {.lex_state = 31, .external_lex_state = 2}, - [188] = {.lex_state = 1, .external_lex_state = 8}, - [189] = {.lex_state = 1, .external_lex_state = 9}, - [190] = {.lex_state = 0, .external_lex_state = 2}, - [191] = {.lex_state = 31, .external_lex_state = 2}, - [192] = {.lex_state = 0, .external_lex_state = 2}, - [193] = {.lex_state = 0, .external_lex_state = 2}, - [194] = {.lex_state = 31, .external_lex_state = 2}, - [195] = {.lex_state = 1, .external_lex_state = 9}, - [196] = {.lex_state = 0, .external_lex_state = 2}, - [197] = {.lex_state = 31, .external_lex_state = 2}, - [198] = {.lex_state = 31, .external_lex_state = 2}, - [199] = {.lex_state = 31, .external_lex_state = 2}, - [200] = {.lex_state = 2, .external_lex_state = 10}, - [201] = {.lex_state = 31, .external_lex_state = 2}, - [202] = {.lex_state = 0, .external_lex_state = 2}, - [203] = {.lex_state = 31, .external_lex_state = 2}, - [204] = {.lex_state = 0, .external_lex_state = 2}, - [205] = {.lex_state = 0, .external_lex_state = 2}, - [206] = {.lex_state = 0, .external_lex_state = 2}, - [207] = {.lex_state = 1, .external_lex_state = 8}, - [208] = {.lex_state = 0, .external_lex_state = 2}, - [209] = {.lex_state = 1, .external_lex_state = 8}, - [210] = {.lex_state = 31, .external_lex_state = 2}, - [211] = {.lex_state = 31, .external_lex_state = 2}, - [212] = {.lex_state = 31, .external_lex_state = 2}, - [213] = {.lex_state = 1, .external_lex_state = 8}, - [214] = {.lex_state = 0, .external_lex_state = 2}, - [215] = {.lex_state = 1, .external_lex_state = 8}, - [216] = {.lex_state = 31, .external_lex_state = 2}, - [217] = {.lex_state = 1, .external_lex_state = 8}, - [218] = {.lex_state = 31, .external_lex_state = 2}, - [219] = {.lex_state = 31, .external_lex_state = 2}, - [220] = {.lex_state = 31, .external_lex_state = 2}, - [221] = {.lex_state = 1, .external_lex_state = 9}, - [222] = {.lex_state = 0, .external_lex_state = 2}, - [223] = {.lex_state = 31, .external_lex_state = 2}, - [224] = {.lex_state = 1, .external_lex_state = 9}, - [225] = {.lex_state = 31, .external_lex_state = 2}, - [226] = {.lex_state = 0, .external_lex_state = 2}, - [227] = {.lex_state = 31, .external_lex_state = 2}, - [228] = {.lex_state = 1, .external_lex_state = 9}, - [229] = {.lex_state = 31, .external_lex_state = 2}, - [230] = {.lex_state = 31, .external_lex_state = 2}, - [231] = {.lex_state = 31, .external_lex_state = 2}, - [232] = {.lex_state = 0, .external_lex_state = 2}, - [233] = {.lex_state = 1, .external_lex_state = 9}, - [234] = {.lex_state = 31, .external_lex_state = 2}, - [235] = {.lex_state = 31, .external_lex_state = 2}, - [236] = {.lex_state = 1, .external_lex_state = 9}, - [237] = {.lex_state = 1, .external_lex_state = 9}, - [238] = {.lex_state = 0, .external_lex_state = 2}, - [239] = {.lex_state = 0, .external_lex_state = 2}, - [240] = {.lex_state = 1, .external_lex_state = 5}, - [241] = {.lex_state = 0, .external_lex_state = 2}, - [242] = {.lex_state = 1, .external_lex_state = 9}, - [243] = {.lex_state = 1, .external_lex_state = 9}, - [244] = {.lex_state = 1, .external_lex_state = 9}, - [245] = {.lex_state = 1, .external_lex_state = 9}, - [246] = {.lex_state = 0, .external_lex_state = 2}, - [247] = {.lex_state = 1, .external_lex_state = 9}, - [248] = {.lex_state = 0, .external_lex_state = 2}, - [249] = {.lex_state = 1, .external_lex_state = 9}, - [250] = {.lex_state = 1, .external_lex_state = 9}, - [251] = {.lex_state = 2, .external_lex_state = 2}, - [252] = {.lex_state = 1, .external_lex_state = 9}, - [253] = {.lex_state = 0, .external_lex_state = 2}, - [254] = {.lex_state = 0, .external_lex_state = 2}, - [255] = {.lex_state = 0, .external_lex_state = 2}, - [256] = {.lex_state = 0, .external_lex_state = 2}, - [257] = {.lex_state = 1, .external_lex_state = 8}, - [258] = {.lex_state = 1, .external_lex_state = 8}, - [259] = {.lex_state = 0, .external_lex_state = 2}, - [260] = {.lex_state = 1, .external_lex_state = 9}, - [261] = {.lex_state = 0, .external_lex_state = 2}, - [262] = {.lex_state = 1, .external_lex_state = 8}, - [263] = {.lex_state = 1, .external_lex_state = 9}, - [264] = {.lex_state = 0, .external_lex_state = 2}, - [265] = {.lex_state = 1, .external_lex_state = 9}, - [266] = {.lex_state = 1, .external_lex_state = 8}, - [267] = {.lex_state = 1, .external_lex_state = 8}, - [268] = {.lex_state = 1, .external_lex_state = 9}, - [269] = {.lex_state = 1, .external_lex_state = 9}, - [270] = {.lex_state = 1, .external_lex_state = 8}, - [271] = {.lex_state = 1, .external_lex_state = 8}, - [272] = {.lex_state = 1, .external_lex_state = 8}, - [273] = {.lex_state = 1, .external_lex_state = 8}, - [274] = {.lex_state = 1, .external_lex_state = 8}, - [275] = {.lex_state = 0, .external_lex_state = 2}, - [276] = {.lex_state = 1, .external_lex_state = 8}, - [277] = {.lex_state = 0, .external_lex_state = 2}, - [278] = {.lex_state = 1, .external_lex_state = 8}, - [279] = {.lex_state = 1, .external_lex_state = 8}, - [280] = {.lex_state = 1, .external_lex_state = 8}, - [281] = {.lex_state = 0, .external_lex_state = 2}, - [282] = {.lex_state = 1, .external_lex_state = 8}, - [283] = {.lex_state = 1, .external_lex_state = 8}, - [284] = {.lex_state = 0, .external_lex_state = 2}, - [285] = {.lex_state = 0, .external_lex_state = 2}, - [286] = {.lex_state = 1, .external_lex_state = 11}, - [287] = {.lex_state = 1, .external_lex_state = 8}, - [288] = {.lex_state = 0, .external_lex_state = 2}, - [289] = {.lex_state = 0, .external_lex_state = 2}, - [290] = {.lex_state = 0, .external_lex_state = 2}, - [291] = {.lex_state = 0, .external_lex_state = 2}, - [292] = {.lex_state = 0, .external_lex_state = 2}, - [293] = {.lex_state = 2, .external_lex_state = 2}, - [294] = {.lex_state = 1, .external_lex_state = 9}, - [295] = {.lex_state = 1, .external_lex_state = 12}, - [296] = {.lex_state = 31, .external_lex_state = 2}, - [297] = {.lex_state = 1, .external_lex_state = 13}, - [298] = {.lex_state = 31, .external_lex_state = 2}, - [299] = {.lex_state = 1, .external_lex_state = 9}, - [300] = {.lex_state = 31, .external_lex_state = 2}, - [301] = {.lex_state = 1, .external_lex_state = 8}, - [302] = {.lex_state = 2, .external_lex_state = 2}, - [303] = {.lex_state = 1, .external_lex_state = 8}, - [304] = {.lex_state = 1, .external_lex_state = 8}, - [305] = {.lex_state = 1, .external_lex_state = 9}, - [306] = {.lex_state = 1, .external_lex_state = 8}, - [307] = {.lex_state = 1, .external_lex_state = 8}, - [308] = {.lex_state = 1, .external_lex_state = 8}, - [309] = {.lex_state = 1, .external_lex_state = 8}, - [310] = {.lex_state = 1, .external_lex_state = 9}, - [311] = {.lex_state = 1, .external_lex_state = 9}, - [312] = {.lex_state = 1, .external_lex_state = 9}, - [313] = {.lex_state = 1, .external_lex_state = 13}, - [314] = {.lex_state = 1, .external_lex_state = 13}, - [315] = {.lex_state = 1, .external_lex_state = 13}, - [316] = {.lex_state = 1, .external_lex_state = 13}, - [317] = {.lex_state = 2, .external_lex_state = 2}, - [318] = {.lex_state = 2, .external_lex_state = 2}, - [319] = {.lex_state = 1, .external_lex_state = 10}, - [320] = {.lex_state = 2, .external_lex_state = 2}, - [321] = {.lex_state = 1, .external_lex_state = 14}, - [322] = {.lex_state = 1, .external_lex_state = 13}, - [323] = {.lex_state = 2, .external_lex_state = 2}, - [324] = {.lex_state = 2, .external_lex_state = 2}, - [325] = {.lex_state = 2, .external_lex_state = 2}, - [326] = {.lex_state = 2, .external_lex_state = 2}, - [327] = {.lex_state = 0, .external_lex_state = 2}, - [328] = {.lex_state = 2, .external_lex_state = 2}, - [329] = {.lex_state = 1, .external_lex_state = 13}, - [330] = {.lex_state = 0, .external_lex_state = 2}, - [331] = {.lex_state = 1, .external_lex_state = 13}, - [332] = {.lex_state = 2, .external_lex_state = 2}, - [333] = {.lex_state = 1, .external_lex_state = 2}, - [334] = {.lex_state = 1, .external_lex_state = 14}, - [335] = {.lex_state = 1, .external_lex_state = 8}, - [336] = {.lex_state = 2, .external_lex_state = 2}, - [337] = {.lex_state = 1, .external_lex_state = 13}, - [338] = {.lex_state = 2, .external_lex_state = 2}, - [339] = {.lex_state = 2, .external_lex_state = 2}, - [340] = {.lex_state = 2, .external_lex_state = 2}, - [341] = {.lex_state = 3, .external_lex_state = 15}, - [342] = {.lex_state = 1, .external_lex_state = 13}, - [343] = {.lex_state = 1, .external_lex_state = 13}, - [344] = {.lex_state = 1, .external_lex_state = 14}, - [345] = {.lex_state = 1, .external_lex_state = 13}, - [346] = {.lex_state = 1, .external_lex_state = 13}, - [347] = {.lex_state = 1, .external_lex_state = 13}, - [348] = {.lex_state = 1, .external_lex_state = 13}, - [349] = {.lex_state = 1, .external_lex_state = 13}, - [350] = {.lex_state = 1, .external_lex_state = 13}, - [351] = {.lex_state = 1, .external_lex_state = 13}, - [352] = {.lex_state = 1, .external_lex_state = 13}, - [353] = {.lex_state = 2, .external_lex_state = 2}, - [354] = {.lex_state = 2, .external_lex_state = 2}, - [355] = {.lex_state = 1, .external_lex_state = 14}, - [356] = {.lex_state = 1, .external_lex_state = 14}, - [357] = {.lex_state = 2, .external_lex_state = 2}, - [358] = {.lex_state = 1, .external_lex_state = 13}, - [359] = {.lex_state = 1, .external_lex_state = 13}, - [360] = {.lex_state = 1, .external_lex_state = 14}, - [361] = {.lex_state = 1, .external_lex_state = 14}, - [362] = {.lex_state = 1, .external_lex_state = 14}, - [363] = {.lex_state = 31, .external_lex_state = 2}, - [364] = {.lex_state = 1, .external_lex_state = 14}, - [365] = {.lex_state = 1, .external_lex_state = 14}, - [366] = {.lex_state = 1, .external_lex_state = 14}, - [367] = {.lex_state = 1, .external_lex_state = 14}, - [368] = {.lex_state = 31, .external_lex_state = 2}, - [369] = {.lex_state = 1, .external_lex_state = 9}, - [370] = {.lex_state = 1, .external_lex_state = 14}, - [371] = {.lex_state = 1, .external_lex_state = 14}, - [372] = {.lex_state = 1, .external_lex_state = 14}, - [373] = {.lex_state = 1, .external_lex_state = 2}, - [374] = {.lex_state = 1, .external_lex_state = 14}, - [375] = {.lex_state = 1, .external_lex_state = 2}, - [376] = {.lex_state = 1, .external_lex_state = 2}, - [377] = {.lex_state = 1, .external_lex_state = 14}, - [378] = {.lex_state = 1, .external_lex_state = 14}, - [379] = {.lex_state = 1, .external_lex_state = 2}, - [380] = {.lex_state = 1, .external_lex_state = 14}, - [381] = {.lex_state = 1, .external_lex_state = 2}, - [382] = {.lex_state = 1, .external_lex_state = 14}, - [383] = {.lex_state = 31, .external_lex_state = 2}, - [384] = {.lex_state = 1, .external_lex_state = 14}, - [385] = {.lex_state = 31, .external_lex_state = 2}, - [386] = {.lex_state = 1, .external_lex_state = 2}, - [387] = {.lex_state = 31, .external_lex_state = 2}, - [388] = {.lex_state = 1, .external_lex_state = 14}, - [389] = {.lex_state = 3, .external_lex_state = 16}, - [390] = {.lex_state = 1, .external_lex_state = 2}, - [391] = {.lex_state = 1, .external_lex_state = 2}, - [392] = {.lex_state = 3, .external_lex_state = 16}, - [393] = {.lex_state = 1, .external_lex_state = 2}, - [394] = {.lex_state = 1, .external_lex_state = 2}, - [395] = {.lex_state = 1, .external_lex_state = 2}, - [396] = {.lex_state = 1, .external_lex_state = 2}, - [397] = {.lex_state = 1, .external_lex_state = 14}, - [398] = {.lex_state = 1, .external_lex_state = 2}, - [399] = {.lex_state = 1, .external_lex_state = 2}, - [400] = {.lex_state = 1, .external_lex_state = 2}, - [401] = {.lex_state = 1, .external_lex_state = 2}, - [402] = {.lex_state = 1, .external_lex_state = 2}, - [403] = {.lex_state = 1, .external_lex_state = 13}, - [404] = {.lex_state = 1, .external_lex_state = 13}, - [405] = {.lex_state = 1, .external_lex_state = 17}, - [406] = {.lex_state = 3, .external_lex_state = 16}, - [407] = {.lex_state = 1, .external_lex_state = 2}, - [408] = {.lex_state = 1, .external_lex_state = 13}, - [409] = {.lex_state = 1, .external_lex_state = 13}, - [410] = {.lex_state = 1, .external_lex_state = 13}, - [411] = {.lex_state = 1, .external_lex_state = 2}, - [412] = {.lex_state = 31, .external_lex_state = 2}, - [413] = {.lex_state = 1, .external_lex_state = 13}, - [414] = {.lex_state = 1, .external_lex_state = 2}, - [415] = {.lex_state = 31, .external_lex_state = 2}, - [416] = {.lex_state = 31, .external_lex_state = 2}, - [417] = {.lex_state = 2, .external_lex_state = 18}, - [418] = {.lex_state = 3, .external_lex_state = 16}, - [419] = {.lex_state = 1, .external_lex_state = 14}, - [420] = {.lex_state = 1, .external_lex_state = 14}, - [421] = {.lex_state = 1, .external_lex_state = 2}, - [422] = {.lex_state = 1, .external_lex_state = 14}, - [423] = {.lex_state = 1, .external_lex_state = 8}, - [424] = {.lex_state = 1, .external_lex_state = 14}, - [425] = {.lex_state = 1, .external_lex_state = 19}, - [426] = {.lex_state = 1, .external_lex_state = 2}, - [427] = {.lex_state = 3, .external_lex_state = 16}, - [428] = {.lex_state = 31, .external_lex_state = 13}, - [429] = {.lex_state = 1, .external_lex_state = 14}, - [430] = {.lex_state = 3, .external_lex_state = 16}, - [431] = {.lex_state = 1, .external_lex_state = 14}, - [432] = {.lex_state = 3, .external_lex_state = 16}, - [433] = {.lex_state = 1, .external_lex_state = 8}, - [434] = {.lex_state = 1, .external_lex_state = 14}, - [435] = {.lex_state = 2, .external_lex_state = 3}, - [436] = {.lex_state = 1, .external_lex_state = 2}, - [437] = {.lex_state = 3, .external_lex_state = 16}, - [438] = {.lex_state = 1, .external_lex_state = 19}, - [439] = {.lex_state = 1, .external_lex_state = 8}, - [440] = {.lex_state = 2, .external_lex_state = 3}, - [441] = {.lex_state = 1, .external_lex_state = 2}, - [442] = {.lex_state = 1, .external_lex_state = 19}, - [443] = {.lex_state = 1, .external_lex_state = 2}, - [444] = {.lex_state = 2, .external_lex_state = 3}, - [445] = {.lex_state = 2, .external_lex_state = 3}, - [446] = {.lex_state = 2, .external_lex_state = 3}, - [447] = {.lex_state = 31, .external_lex_state = 2}, - [448] = {.lex_state = 1, .external_lex_state = 2}, - [449] = {.lex_state = 1, .external_lex_state = 18}, - [450] = {.lex_state = 31, .external_lex_state = 2}, - [451] = {.lex_state = 1, .external_lex_state = 19}, - [452] = {.lex_state = 2, .external_lex_state = 3}, - [453] = {.lex_state = 1, .external_lex_state = 2}, - [454] = {.lex_state = 1, .external_lex_state = 2}, - [455] = {.lex_state = 1, .external_lex_state = 2}, - [456] = {.lex_state = 1, .external_lex_state = 19}, - [457] = {.lex_state = 1, .external_lex_state = 19}, - [458] = {.lex_state = 1, .external_lex_state = 19}, - [459] = {.lex_state = 1, .external_lex_state = 14}, - [460] = {.lex_state = 1, .external_lex_state = 19}, - [461] = {.lex_state = 1, .external_lex_state = 19}, - [462] = {.lex_state = 3, .external_lex_state = 16}, - [463] = {.lex_state = 0, .external_lex_state = 2}, - [464] = {.lex_state = 1, .external_lex_state = 19}, - [465] = {.lex_state = 1, .external_lex_state = 19}, - [466] = {.lex_state = 1, .external_lex_state = 3}, - [467] = {.lex_state = 2, .external_lex_state = 3}, - [468] = {.lex_state = 2, .external_lex_state = 3}, - [469] = {.lex_state = 1, .external_lex_state = 19}, - [470] = {.lex_state = 2, .external_lex_state = 3}, - [471] = {.lex_state = 2, .external_lex_state = 3}, - [472] = {.lex_state = 2, .external_lex_state = 3}, - [473] = {.lex_state = 0, .external_lex_state = 2}, - [474] = {.lex_state = 2, .external_lex_state = 3}, - [475] = {.lex_state = 2, .external_lex_state = 3}, - [476] = {.lex_state = 0, .external_lex_state = 2}, - [477] = {.lex_state = 1, .external_lex_state = 19}, - [478] = {.lex_state = 1, .external_lex_state = 19}, - [479] = {.lex_state = 0, .external_lex_state = 2}, - [480] = {.lex_state = 2, .external_lex_state = 3}, - [481] = {.lex_state = 1, .external_lex_state = 19}, - [482] = {.lex_state = 2, .external_lex_state = 3}, - [483] = {.lex_state = 3, .external_lex_state = 16}, - [484] = {.lex_state = 1, .external_lex_state = 19}, - [485] = {.lex_state = 1, .external_lex_state = 19}, - [486] = {.lex_state = 1, .external_lex_state = 19}, - [487] = {.lex_state = 1, .external_lex_state = 19}, - [488] = {.lex_state = 2, .external_lex_state = 3}, - [489] = {.lex_state = 2, .external_lex_state = 3}, - [490] = {.lex_state = 0, .external_lex_state = 2}, - [491] = {.lex_state = 1, .external_lex_state = 19}, - [492] = {.lex_state = 3, .external_lex_state = 16}, - [493] = {.lex_state = 2, .external_lex_state = 3}, - [494] = {.lex_state = 2, .external_lex_state = 3}, - [495] = {.lex_state = 2, .external_lex_state = 3}, - [496] = {.lex_state = 2, .external_lex_state = 3}, - [497] = {.lex_state = 1, .external_lex_state = 19}, - [498] = {.lex_state = 1, .external_lex_state = 3}, - [499] = {.lex_state = 1, .external_lex_state = 3}, - [500] = {.lex_state = 1, .external_lex_state = 3}, - [501] = {.lex_state = 0, .external_lex_state = 2}, - [502] = {.lex_state = 0, .external_lex_state = 2}, - [503] = {.lex_state = 1, .external_lex_state = 2}, - [504] = {.lex_state = 1, .external_lex_state = 3}, - [505] = {.lex_state = 1, .external_lex_state = 3}, - [506] = {.lex_state = 1, .external_lex_state = 19}, - [507] = {.lex_state = 0, .external_lex_state = 2}, - [508] = {.lex_state = 0, .external_lex_state = 2}, - [509] = {.lex_state = 0, .external_lex_state = 2}, - [510] = {.lex_state = 0, .external_lex_state = 2}, - [511] = {.lex_state = 1, .external_lex_state = 3}, - [512] = {.lex_state = 0, .external_lex_state = 2}, - [513] = {.lex_state = 0, .external_lex_state = 2}, - [514] = {.lex_state = 0, .external_lex_state = 2}, - [515] = {.lex_state = 0, .external_lex_state = 2}, - [516] = {.lex_state = 0, .external_lex_state = 2}, - [517] = {.lex_state = 0, .external_lex_state = 2}, - [518] = {.lex_state = 0, .external_lex_state = 2}, - [519] = {.lex_state = 0, .external_lex_state = 2}, - [520] = {.lex_state = 0, .external_lex_state = 2}, - [521] = {.lex_state = 0, .external_lex_state = 2}, - [522] = {.lex_state = 0, .external_lex_state = 2}, - [523] = {.lex_state = 0, .external_lex_state = 2}, - [524] = {.lex_state = 1, .external_lex_state = 19}, - [525] = {.lex_state = 0, .external_lex_state = 2}, - [526] = {.lex_state = 0, .external_lex_state = 2}, - [527] = {.lex_state = 0, .external_lex_state = 2}, - [528] = {.lex_state = 0, .external_lex_state = 2}, - [529] = {.lex_state = 0, .external_lex_state = 2}, - [530] = {.lex_state = 0, .external_lex_state = 2}, - [531] = {.lex_state = 0, .external_lex_state = 2}, - [532] = {.lex_state = 0, .external_lex_state = 2}, - [533] = {.lex_state = 0, .external_lex_state = 2}, - [534] = {.lex_state = 0, .external_lex_state = 2}, - [535] = {.lex_state = 0, .external_lex_state = 2}, - [536] = {.lex_state = 31, .external_lex_state = 3}, - [537] = {.lex_state = 0, .external_lex_state = 2}, - [538] = {.lex_state = 0, .external_lex_state = 2}, - [539] = {.lex_state = 0, .external_lex_state = 2}, - [540] = {.lex_state = 31, .external_lex_state = 3}, - [541] = {.lex_state = 1, .external_lex_state = 3}, - [542] = {.lex_state = 1, .external_lex_state = 3}, - [543] = {.lex_state = 31, .external_lex_state = 3}, - [544] = {.lex_state = 1, .external_lex_state = 19}, - [545] = {.lex_state = 0, .external_lex_state = 2}, - [546] = {.lex_state = 0, .external_lex_state = 2}, - [547] = {.lex_state = 1, .external_lex_state = 19}, - [548] = {.lex_state = 1, .external_lex_state = 3}, - [549] = {.lex_state = 1, .external_lex_state = 3}, - [550] = {.lex_state = 0, .external_lex_state = 2}, - [551] = {.lex_state = 0, .external_lex_state = 2}, - [552] = {.lex_state = 1, .external_lex_state = 3}, - [553] = {.lex_state = 0, .external_lex_state = 2}, - [554] = {.lex_state = 0, .external_lex_state = 2}, - [555] = {.lex_state = 1, .external_lex_state = 3}, - [556] = {.lex_state = 1, .external_lex_state = 3}, - [557] = {.lex_state = 31, .external_lex_state = 3}, - [558] = {.lex_state = 0, .external_lex_state = 2}, - [559] = {.lex_state = 1, .external_lex_state = 3}, - [560] = {.lex_state = 0, .external_lex_state = 2}, - [561] = {.lex_state = 1, .external_lex_state = 19}, - [562] = {.lex_state = 31, .external_lex_state = 3}, - [563] = {.lex_state = 0, .external_lex_state = 2}, - [564] = {.lex_state = 1, .external_lex_state = 3}, - [565] = {.lex_state = 31, .external_lex_state = 2}, - [566] = {.lex_state = 0, .external_lex_state = 2}, - [567] = {.lex_state = 0, .external_lex_state = 2}, - [568] = {.lex_state = 0, .external_lex_state = 2}, - [569] = {.lex_state = 1, .external_lex_state = 3}, - [570] = {.lex_state = 1, .external_lex_state = 3}, - [571] = {.lex_state = 1, .external_lex_state = 19}, - [572] = {.lex_state = 1, .external_lex_state = 3}, - [573] = {.lex_state = 0, .external_lex_state = 2}, - [574] = {.lex_state = 1, .external_lex_state = 3}, - [575] = {.lex_state = 0, .external_lex_state = 2}, - [576] = {.lex_state = 0, .external_lex_state = 2}, - [577] = {.lex_state = 1, .external_lex_state = 3}, - [578] = {.lex_state = 0, .external_lex_state = 2}, - [579] = {.lex_state = 0, .external_lex_state = 2}, - [580] = {.lex_state = 1, .external_lex_state = 14}, - [581] = {.lex_state = 1, .external_lex_state = 3}, - [582] = {.lex_state = 0, .external_lex_state = 2}, - [583] = {.lex_state = 0, .external_lex_state = 2}, - [584] = {.lex_state = 0, .external_lex_state = 2}, - [585] = {.lex_state = 0, .external_lex_state = 2}, - [586] = {.lex_state = 1, .external_lex_state = 14}, - [587] = {.lex_state = 31, .external_lex_state = 19}, - [588] = {.lex_state = 0, .external_lex_state = 2}, - [589] = {.lex_state = 1, .external_lex_state = 3}, - [590] = {.lex_state = 0, .external_lex_state = 2}, - [591] = {.lex_state = 1, .external_lex_state = 3}, - [592] = {.lex_state = 1, .external_lex_state = 3}, - [593] = {.lex_state = 31, .external_lex_state = 3}, - [594] = {.lex_state = 1, .external_lex_state = 14}, - [595] = {.lex_state = 1, .external_lex_state = 3}, - [596] = {.lex_state = 1, .external_lex_state = 3}, - [597] = {.lex_state = 0, .external_lex_state = 2}, - [598] = {.lex_state = 1, .external_lex_state = 3}, - [599] = {.lex_state = 0, .external_lex_state = 2}, - [600] = {.lex_state = 31, .external_lex_state = 3}, - [601] = {.lex_state = 1, .external_lex_state = 3}, - [602] = {.lex_state = 1, .external_lex_state = 3}, - [603] = {.lex_state = 0, .external_lex_state = 2}, - [604] = {.lex_state = 0, .external_lex_state = 2}, - [605] = {.lex_state = 0, .external_lex_state = 2}, - [606] = {.lex_state = 31, .external_lex_state = 2}, - [607] = {.lex_state = 31, .external_lex_state = 2}, - [608] = {.lex_state = 31, .external_lex_state = 2}, - [609] = {.lex_state = 31, .external_lex_state = 2}, - [610] = {.lex_state = 31, .external_lex_state = 2}, - [611] = {.lex_state = 31, .external_lex_state = 2}, - [612] = {.lex_state = 1, .external_lex_state = 3}, - [613] = {.lex_state = 0, .external_lex_state = 2}, - [614] = {.lex_state = 0, .external_lex_state = 2}, - [615] = {.lex_state = 0, .external_lex_state = 2}, - [616] = {.lex_state = 31, .external_lex_state = 2}, - [617] = {.lex_state = 0, .external_lex_state = 2}, - [618] = {.lex_state = 31, .external_lex_state = 3}, - [619] = {.lex_state = 0, .external_lex_state = 2}, - [620] = {.lex_state = 0, .external_lex_state = 2}, - [621] = {.lex_state = 0, .external_lex_state = 2}, - [622] = {.lex_state = 0, .external_lex_state = 10}, - [623] = {.lex_state = 0, .external_lex_state = 2}, - [624] = {.lex_state = 0, .external_lex_state = 2}, - [625] = {.lex_state = 31, .external_lex_state = 2}, - [626] = {.lex_state = 31, .external_lex_state = 2}, - [627] = {.lex_state = 0, .external_lex_state = 2}, - [628] = {.lex_state = 0, .external_lex_state = 3}, - [629] = {.lex_state = 0, .external_lex_state = 2}, - [630] = {.lex_state = 0, .external_lex_state = 2}, - [631] = {.lex_state = 0, .external_lex_state = 2}, - [632] = {.lex_state = 0, .external_lex_state = 3}, - [633] = {.lex_state = 0, .external_lex_state = 2}, - [634] = {.lex_state = 1, .external_lex_state = 2}, - [635] = {.lex_state = 0, .external_lex_state = 3}, - [636] = {.lex_state = 0, .external_lex_state = 2}, - [637] = {.lex_state = 0, .external_lex_state = 2}, - [638] = {.lex_state = 0, .external_lex_state = 2}, - [639] = {.lex_state = 0, .external_lex_state = 2}, - [640] = {.lex_state = 0, .external_lex_state = 2}, - [641] = {.lex_state = 0, .external_lex_state = 2}, - [642] = {.lex_state = 3, .external_lex_state = 2}, - [643] = {.lex_state = 31, .external_lex_state = 3}, - [644] = {.lex_state = 31, .external_lex_state = 3}, - [645] = {.lex_state = 31, .external_lex_state = 3}, - [646] = {.lex_state = 0, .external_lex_state = 3}, - [647] = {.lex_state = 0, .external_lex_state = 3}, - [648] = {.lex_state = 0, .external_lex_state = 2}, - [649] = {.lex_state = 0, .external_lex_state = 2}, - [650] = {.lex_state = 0, .external_lex_state = 2}, - [651] = {.lex_state = 0, .external_lex_state = 2}, - [652] = {.lex_state = 0, .external_lex_state = 2}, - [653] = {.lex_state = 0, .external_lex_state = 2}, - [654] = {.lex_state = 0, .external_lex_state = 2}, - [655] = {.lex_state = 0, .external_lex_state = 2}, - [656] = {.lex_state = 0, .external_lex_state = 2}, - [657] = {.lex_state = 0, .external_lex_state = 2}, - [658] = {.lex_state = 31, .external_lex_state = 2}, - [659] = {.lex_state = 0, .external_lex_state = 3}, - [660] = {.lex_state = 1, .external_lex_state = 2}, - [661] = {.lex_state = 1, .external_lex_state = 2}, - [662] = {.lex_state = 0, .external_lex_state = 2}, - [663] = {.lex_state = 0, .external_lex_state = 2}, - [664] = {.lex_state = 0, .external_lex_state = 2}, - [665] = {.lex_state = 0, .external_lex_state = 2}, - [666] = {.lex_state = 0, .external_lex_state = 2}, - [667] = {.lex_state = 0, .external_lex_state = 2}, - [668] = {.lex_state = 0, .external_lex_state = 2}, - [669] = {.lex_state = 0, .external_lex_state = 2}, - [670] = {.lex_state = 0, .external_lex_state = 2}, - [671] = {.lex_state = 0, .external_lex_state = 3}, - [672] = {.lex_state = 3, .external_lex_state = 2}, - [673] = {.lex_state = 0, .external_lex_state = 2}, - [674] = {.lex_state = 0, .external_lex_state = 2}, - [675] = {.lex_state = 0, .external_lex_state = 2}, - [676] = {.lex_state = 1, .external_lex_state = 2}, - [677] = {.lex_state = 1, .external_lex_state = 2}, - [678] = {.lex_state = 0, .external_lex_state = 2}, - [679] = {.lex_state = 0, .external_lex_state = 2}, - [680] = {.lex_state = 0, .external_lex_state = 2}, - [681] = {.lex_state = 0, .external_lex_state = 3}, - [682] = {.lex_state = 0, .external_lex_state = 2}, - [683] = {.lex_state = 0, .external_lex_state = 2}, - [684] = {.lex_state = 0, .external_lex_state = 2}, - [685] = {.lex_state = 0, .external_lex_state = 2}, - [686] = {.lex_state = 0, .external_lex_state = 2}, - [687] = {.lex_state = 0, .external_lex_state = 2}, - [688] = {.lex_state = 31, .external_lex_state = 2}, - [689] = {.lex_state = 0, .external_lex_state = 2}, - [690] = {.lex_state = 0, .external_lex_state = 2}, - [691] = {.lex_state = 0, .external_lex_state = 2}, - [692] = {.lex_state = 0, .external_lex_state = 3}, - [693] = {.lex_state = 31, .external_lex_state = 2}, - [694] = {.lex_state = 0, .external_lex_state = 2}, - [695] = {.lex_state = 0, .external_lex_state = 2}, - [696] = {.lex_state = 0, .external_lex_state = 2}, - [697] = {.lex_state = 0, .external_lex_state = 2}, - [698] = {.lex_state = 0, .external_lex_state = 2}, - [699] = {.lex_state = 0, .external_lex_state = 2}, - [700] = {.lex_state = 31, .external_lex_state = 2}, - [701] = {.lex_state = 0, .external_lex_state = 2}, - [702] = {.lex_state = 0, .external_lex_state = 2}, - [703] = {.lex_state = 31, .external_lex_state = 2}, - [704] = {.lex_state = 0, .external_lex_state = 2}, - [705] = {.lex_state = 0, .external_lex_state = 2}, - [706] = {.lex_state = 0, .external_lex_state = 2}, - [707] = {.lex_state = 31, .external_lex_state = 2}, - [708] = {.lex_state = 0, .external_lex_state = 2}, - [709] = {.lex_state = 0, .external_lex_state = 2}, - [710] = {.lex_state = 0, .external_lex_state = 2}, - [711] = {.lex_state = 0, .external_lex_state = 2}, - [712] = {.lex_state = 0, .external_lex_state = 2}, - [713] = {.lex_state = 0, .external_lex_state = 2}, - [714] = {.lex_state = 0, .external_lex_state = 2}, - [715] = {.lex_state = 0, .external_lex_state = 2}, - [716] = {.lex_state = 0, .external_lex_state = 2}, - [717] = {.lex_state = 0, .external_lex_state = 2}, - [718] = {.lex_state = 0, .external_lex_state = 2}, - [719] = {.lex_state = 0, .external_lex_state = 2}, - [720] = {.lex_state = 0, .external_lex_state = 2}, - [721] = {.lex_state = 0, .external_lex_state = 2}, - [722] = {.lex_state = 0, .external_lex_state = 2}, - [723] = {.lex_state = 0, .external_lex_state = 2}, - [724] = {.lex_state = 0, .external_lex_state = 2}, - [725] = {.lex_state = 0, .external_lex_state = 2}, - [726] = {.lex_state = 0, .external_lex_state = 2}, - [727] = {.lex_state = 0, .external_lex_state = 2}, - [728] = {.lex_state = 0, .external_lex_state = 2}, - [729] = {.lex_state = 0, .external_lex_state = 2}, - [730] = {.lex_state = 0, .external_lex_state = 2}, - [731] = {.lex_state = 0, .external_lex_state = 2}, - [732] = {.lex_state = 0, .external_lex_state = 3}, - [733] = {.lex_state = 0, .external_lex_state = 2}, - [734] = {.lex_state = 0, .external_lex_state = 2}, - [735] = {.lex_state = 31, .external_lex_state = 2}, - [736] = {.lex_state = 0, .external_lex_state = 2}, - [737] = {.lex_state = 0, .external_lex_state = 2}, - [738] = {.lex_state = 0, .external_lex_state = 2}, - [739] = {.lex_state = 0, .external_lex_state = 2}, - [740] = {.lex_state = 31, .external_lex_state = 2}, - [741] = {.lex_state = 0, .external_lex_state = 2}, - [742] = {.lex_state = 0, .external_lex_state = 2}, - [743] = {.lex_state = 0, .external_lex_state = 2}, - [744] = {.lex_state = 0, .external_lex_state = 3}, - [745] = {.lex_state = 0, .external_lex_state = 2}, - [746] = {.lex_state = 0, .external_lex_state = 2}, - [747] = {.lex_state = 0, .external_lex_state = 2}, - [748] = {.lex_state = 31, .external_lex_state = 2}, - [749] = {.lex_state = 0, .external_lex_state = 2}, - [750] = {.lex_state = 0, .external_lex_state = 20}, - [751] = {.lex_state = 0, .external_lex_state = 2}, - [752] = {.lex_state = 31, .external_lex_state = 2}, - [753] = {.lex_state = 0, .external_lex_state = 2}, - [754] = {.lex_state = 0, .external_lex_state = 20}, - [755] = {.lex_state = 0, .external_lex_state = 2}, - [756] = {.lex_state = 0, .external_lex_state = 2}, - [757] = {.lex_state = 0, .external_lex_state = 2}, - [758] = {.lex_state = 0, .external_lex_state = 3}, - [759] = {.lex_state = 0, .external_lex_state = 2}, - [760] = {.lex_state = 0, .external_lex_state = 2}, - [761] = {.lex_state = 0, .external_lex_state = 2}, - [762] = {.lex_state = 0, .external_lex_state = 2}, - [763] = {.lex_state = 0, .external_lex_state = 20}, - [764] = {.lex_state = 0, .external_lex_state = 20}, - [765] = {.lex_state = 0, .external_lex_state = 2}, - [766] = {.lex_state = 0, .external_lex_state = 2}, - [767] = {.lex_state = 0, .external_lex_state = 2}, - [768] = {.lex_state = 0, .external_lex_state = 2}, - [769] = {.lex_state = 0, .external_lex_state = 2}, - [770] = {.lex_state = 0, .external_lex_state = 2}, - [771] = {.lex_state = 0, .external_lex_state = 2}, - [772] = {.lex_state = 0, .external_lex_state = 2}, - [773] = {.lex_state = 0, .external_lex_state = 2}, - [774] = {.lex_state = 0, .external_lex_state = 2}, - [775] = {.lex_state = 0, .external_lex_state = 2}, - [776] = {.lex_state = 0, .external_lex_state = 2}, - [777] = {.lex_state = 0, .external_lex_state = 2}, - [778] = {.lex_state = 0, .external_lex_state = 3}, - [779] = {.lex_state = 0, .external_lex_state = 2}, - [780] = {.lex_state = 0, .external_lex_state = 20}, - [781] = {.lex_state = 0, .external_lex_state = 2}, - [782] = {.lex_state = 0, .external_lex_state = 20}, - [783] = {.lex_state = 0, .external_lex_state = 2}, - [784] = {.lex_state = 0, .external_lex_state = 2}, - [785] = {.lex_state = 0, .external_lex_state = 2}, - [786] = {.lex_state = 0, .external_lex_state = 2}, - [787] = {.lex_state = 0, .external_lex_state = 2}, - [788] = {.lex_state = 0, .external_lex_state = 2}, - [789] = {.lex_state = 0, .external_lex_state = 2}, - [790] = {.lex_state = 0, .external_lex_state = 3}, - [791] = {.lex_state = 0, .external_lex_state = 2}, - [792] = {.lex_state = 0, .external_lex_state = 20}, - [793] = {.lex_state = 0, .external_lex_state = 2}, - [794] = {.lex_state = 0, .external_lex_state = 2}, - [795] = {.lex_state = 0, .external_lex_state = 20}, - [796] = {.lex_state = 0, .external_lex_state = 2}, - [797] = {.lex_state = 0, .external_lex_state = 2}, - [798] = {.lex_state = 0, .external_lex_state = 2}, - [799] = {.lex_state = 0, .external_lex_state = 2}, - [800] = {.lex_state = 0, .external_lex_state = 3}, - [801] = {.lex_state = 0, .external_lex_state = 2}, - [802] = {.lex_state = 0, .external_lex_state = 20}, - [803] = {.lex_state = 31, .external_lex_state = 2}, - [804] = {.lex_state = 0, .external_lex_state = 2}, - [805] = {.lex_state = 0, .external_lex_state = 2}, - [806] = {.lex_state = 0, .external_lex_state = 2}, - [807] = {.lex_state = 0, .external_lex_state = 2}, - [808] = {.lex_state = 0, .external_lex_state = 2}, - [809] = {.lex_state = 0, .external_lex_state = 2}, - [810] = {.lex_state = 0, .external_lex_state = 3}, - [811] = {.lex_state = 0, .external_lex_state = 2}, - [812] = {.lex_state = 0, .external_lex_state = 20}, - [813] = {.lex_state = 0, .external_lex_state = 2}, - [814] = {.lex_state = 0, .external_lex_state = 2}, - [815] = {.lex_state = 0, .external_lex_state = 2}, - [816] = {.lex_state = 0, .external_lex_state = 2}, - [817] = {.lex_state = 0, .external_lex_state = 2}, - [818] = {.lex_state = 0, .external_lex_state = 2}, - [819] = {.lex_state = 0, .external_lex_state = 2}, - [820] = {.lex_state = 0, .external_lex_state = 3}, - [821] = {.lex_state = 0, .external_lex_state = 2}, - [822] = {.lex_state = 0, .external_lex_state = 2}, - [823] = {.lex_state = 0, .external_lex_state = 2}, - [824] = {.lex_state = 0, .external_lex_state = 2}, - [825] = {.lex_state = 0, .external_lex_state = 2}, - [826] = {.lex_state = 0, .external_lex_state = 2}, - [827] = {.lex_state = 0, .external_lex_state = 3}, - [828] = {.lex_state = 0, .external_lex_state = 2}, - [829] = {.lex_state = 0, .external_lex_state = 20}, - [830] = {.lex_state = 0, .external_lex_state = 2}, - [831] = {.lex_state = 0, .external_lex_state = 2}, - [832] = {.lex_state = 0, .external_lex_state = 2}, - [833] = {.lex_state = 0, .external_lex_state = 2}, - [834] = {.lex_state = 0, .external_lex_state = 3}, - [835] = {.lex_state = 0, .external_lex_state = 2}, - [836] = {.lex_state = 0, .external_lex_state = 20}, - [837] = {.lex_state = 0, .external_lex_state = 2}, - [838] = {.lex_state = 0, .external_lex_state = 2}, - [839] = {.lex_state = 0, .external_lex_state = 2}, - [840] = {.lex_state = 0, .external_lex_state = 2}, - [841] = {.lex_state = 0, .external_lex_state = 3}, - [842] = {.lex_state = 0, .external_lex_state = 2}, - [843] = {.lex_state = 0, .external_lex_state = 20}, - [844] = {.lex_state = 0, .external_lex_state = 2}, - [845] = {.lex_state = 0, .external_lex_state = 2}, - [846] = {.lex_state = 0, .external_lex_state = 2}, - [847] = {.lex_state = 0, .external_lex_state = 2}, - [848] = {.lex_state = 0, .external_lex_state = 3}, - [849] = {.lex_state = 0, .external_lex_state = 2}, - [850] = {.lex_state = 0, .external_lex_state = 2}, - [851] = {.lex_state = 0, .external_lex_state = 2}, - [852] = {.lex_state = 0, .external_lex_state = 2}, - [853] = {.lex_state = 31, .external_lex_state = 2}, - [854] = {.lex_state = 31, .external_lex_state = 2}, - [855] = {.lex_state = 31, .external_lex_state = 2}, - [856] = {.lex_state = 0, .external_lex_state = 2}, - [857] = {.lex_state = 0, .external_lex_state = 2}, - [858] = {.lex_state = 0, .external_lex_state = 2}, - [859] = {.lex_state = 0, .external_lex_state = 2}, - [860] = {.lex_state = 31, .external_lex_state = 2}, - [861] = {.lex_state = 31, .external_lex_state = 2}, - [862] = {.lex_state = 31, .external_lex_state = 2}, - [863] = {.lex_state = 0, .external_lex_state = 2}, - [864] = {.lex_state = 0, .external_lex_state = 2}, - [865] = {.lex_state = 0, .external_lex_state = 20}, - [866] = {.lex_state = 0, .external_lex_state = 2}, - [867] = {.lex_state = 31, .external_lex_state = 2}, - [868] = {.lex_state = 0, .external_lex_state = 2}, - [869] = {.lex_state = 31, .external_lex_state = 2}, - [870] = {.lex_state = 0, .external_lex_state = 2}, - [871] = {.lex_state = 0, .external_lex_state = 20}, - [872] = {.lex_state = 0, .external_lex_state = 2}, - [873] = {.lex_state = 0, .external_lex_state = 2}, - [874] = {.lex_state = 0, .external_lex_state = 2}, - [875] = {.lex_state = 0, .external_lex_state = 2}, - [876] = {.lex_state = 0, .external_lex_state = 2}, - [877] = {.lex_state = 0, .external_lex_state = 2}, - [878] = {.lex_state = 0, .external_lex_state = 2}, - [879] = {.lex_state = 0, .external_lex_state = 2}, - [880] = {.lex_state = 0, .external_lex_state = 2}, - [881] = {.lex_state = 0, .external_lex_state = 2}, - [882] = {.lex_state = 0, .external_lex_state = 2}, - [883] = {.lex_state = 0, .external_lex_state = 2}, - [884] = {.lex_state = 0, .external_lex_state = 2}, - [885] = {.lex_state = 0, .external_lex_state = 2}, - [886] = {.lex_state = 0, .external_lex_state = 2}, - [887] = {.lex_state = 0, .external_lex_state = 2}, - [888] = {.lex_state = 0, .external_lex_state = 2}, - [889] = {.lex_state = 0, .external_lex_state = 2}, - [890] = {.lex_state = 0, .external_lex_state = 2}, - [891] = {.lex_state = 0, .external_lex_state = 2}, - [892] = {.lex_state = 0, .external_lex_state = 20}, - [893] = {.lex_state = 0, .external_lex_state = 2}, - [894] = {.lex_state = 0, .external_lex_state = 20}, - [895] = {.lex_state = 0, .external_lex_state = 2}, -}; - -static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { - [0] = { - [ts_builtin_sym_end] = ACTIONS(1), - [sym_ident_pattern_token] = ACTIONS(1), - [anon_sym_SEMI] = ACTIONS(1), - [anon_sym_true] = ACTIONS(1), - [anon_sym_false] = ACTIONS(1), - [aux_sym_decimal_int_literal_token1] = ACTIONS(1), - [aux_sym_decimal_int_literal_token2] = ACTIONS(1), - [sym_hex_int_literal] = ACTIONS(1), - [aux_sym_decimal_float_literal_token1] = ACTIONS(1), - [aux_sym_decimal_float_literal_token2] = ACTIONS(1), - [aux_sym_decimal_float_literal_token3] = ACTIONS(1), - [aux_sym_decimal_float_literal_token4] = ACTIONS(1), - [aux_sym_decimal_float_literal_token5] = ACTIONS(1), - [aux_sym_hex_float_literal_token1] = ACTIONS(1), - [aux_sym_hex_float_literal_token2] = ACTIONS(1), - [aux_sym_hex_float_literal_token3] = ACTIONS(1), - [anon_sym_diagnostic] = ACTIONS(1), - [anon_sym_DOT] = ACTIONS(1), - [anon_sym_COMMA] = ACTIONS(1), - [anon_sym_AT] = ACTIONS(1), - [anon_sym_align] = ACTIONS(1), - [anon_sym_LPAREN] = ACTIONS(1), - [anon_sym_RPAREN] = ACTIONS(1), - [anon_sym_binding] = ACTIONS(1), - [anon_sym_blend_src] = ACTIONS(1), - [anon_sym_builtin] = ACTIONS(1), - [anon_sym_const] = ACTIONS(1), - [anon_sym_group] = ACTIONS(1), - [anon_sym_id] = ACTIONS(1), - [anon_sym_interpolate] = ACTIONS(1), - [anon_sym_invariant] = ACTIONS(1), - [anon_sym_location] = ACTIONS(1), - [anon_sym_must_use] = ACTIONS(1), - [anon_sym_size] = ACTIONS(1), - [anon_sym_workgroup_size] = ACTIONS(1), - [anon_sym_vertex] = ACTIONS(1), - [anon_sym_fragment] = ACTIONS(1), - [anon_sym_compute] = ACTIONS(1), - [anon_sym_struct] = ACTIONS(1), - [anon_sym_LBRACE] = ACTIONS(1), - [anon_sym_RBRACE] = ACTIONS(1), - [anon_sym_COLON] = ACTIONS(1), - [anon_sym_alias] = ACTIONS(1), - [anon_sym_EQ] = ACTIONS(1), - [anon_sym_let] = ACTIONS(1), - [anon_sym_var] = ACTIONS(1), - [anon_sym_override] = ACTIONS(1), - [anon_sym_LBRACK] = ACTIONS(1), - [anon_sym_RBRACK] = ACTIONS(1), - [anon_sym_DASH] = ACTIONS(1), - [anon_sym_BANG] = ACTIONS(1), - [anon_sym_TILDE] = ACTIONS(1), - [anon_sym_STAR] = ACTIONS(1), - [anon_sym_AMP] = ACTIONS(1), - [anon_sym_SLASH] = ACTIONS(1), - [anon_sym_PERCENT] = ACTIONS(1), - [anon_sym_PLUS] = ACTIONS(1), - [anon_sym_EQ_EQ] = ACTIONS(1), - [anon_sym_BANG_EQ] = ACTIONS(1), - [anon_sym_AMP_AMP] = ACTIONS(1), - [anon_sym_PIPE_PIPE] = ACTIONS(1), - [anon_sym_PIPE] = ACTIONS(1), - [anon_sym_CARET] = ACTIONS(1), - [anon_sym__] = ACTIONS(1), - [anon_sym_PLUS_EQ] = ACTIONS(1), - [anon_sym_DASH_EQ] = ACTIONS(1), - [anon_sym_STAR_EQ] = ACTIONS(1), - [anon_sym_SLASH_EQ] = ACTIONS(1), - [anon_sym_PERCENT_EQ] = ACTIONS(1), - [anon_sym_AMP_EQ] = ACTIONS(1), - [anon_sym_PIPE_EQ] = ACTIONS(1), - [anon_sym_CARET_EQ] = ACTIONS(1), - [anon_sym_PLUS_PLUS] = ACTIONS(1), - [anon_sym_if] = ACTIONS(1), - [anon_sym_else] = ACTIONS(1), - [anon_sym_switch] = ACTIONS(1), - [anon_sym_case] = ACTIONS(1), - [anon_sym_default] = ACTIONS(1), - [anon_sym_loop] = ACTIONS(1), - [anon_sym_for] = ACTIONS(1), - [anon_sym_while] = ACTIONS(1), - [anon_sym_break] = ACTIONS(1), - [sym_continue_statement] = ACTIONS(1), - [anon_sym_continuing] = ACTIONS(1), - [anon_sym_return] = ACTIONS(1), - [anon_sym_const_assert] = ACTIONS(1), - [anon_sym_discard] = ACTIONS(1), - [anon_sym_fn] = ACTIONS(1), - [anon_sym_DASH_GT] = ACTIONS(1), - [anon_sym_enable] = ACTIONS(1), - [anon_sym_requires] = ACTIONS(1), - [aux_sym_swizzle_name_token1] = ACTIONS(1), - [aux_sym_swizzle_name_token2] = ACTIONS(1), - [aux_sym_swizzle_name_token3] = ACTIONS(1), - [aux_sym_swizzle_name_token4] = ACTIONS(1), - [aux_sym_swizzle_name_token5] = ACTIONS(1), - [aux_sym_swizzle_name_token6] = ACTIONS(1), - [aux_sym_swizzle_name_token7] = ACTIONS(1), - [aux_sym_swizzle_name_token8] = ACTIONS(1), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - [sym__disambiguate_template] = ACTIONS(1), - [sym__template_args_start] = ACTIONS(1), - [sym__template_args_end] = ACTIONS(1), - [sym__less_than] = ACTIONS(1), - [sym__less_than_equal] = ACTIONS(1), - [sym__shift_left] = ACTIONS(1), - [sym__shift_left_assign] = ACTIONS(1), - [sym__greater_than] = ACTIONS(1), - [sym__greater_than_equal] = ACTIONS(1), - [sym__shift_right] = ACTIONS(1), - [sym__shift_right_assign] = ACTIONS(1), - [sym__error_sentinel] = ACTIONS(1), - }, - [1] = { - [sym_translation_unit] = STATE(887), - [sym_global_directive] = STATE(55), - [sym_diagnostic_directive] = STATE(463), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(177), - [sym_struct_decl] = STATE(105), - [sym_type_alias_decl] = STATE(886), - [sym_variable_decl] = STATE(740), - [sym_global_variable_decl] = STATE(886), - [sym_global_value_decl] = STATE(886), - [sym_const_assert_statement] = STATE(886), - [sym_function_decl] = STATE(105), - [sym_function_header] = STATE(254), - [sym_enable_directive] = STATE(463), - [sym_requires_directive] = STATE(463), - [aux_sym_translation_unit_repeat1] = STATE(55), - [aux_sym_translation_unit_repeat2] = STATE(105), - [aux_sym_struct_member_repeat1] = STATE(177), - [ts_builtin_sym_end] = ACTIONS(5), - [anon_sym_SEMI] = ACTIONS(7), - [anon_sym_diagnostic] = ACTIONS(9), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_const] = ACTIONS(13), - [anon_sym_struct] = ACTIONS(15), - [anon_sym_alias] = ACTIONS(17), - [anon_sym_var] = ACTIONS(19), - [anon_sym_override] = ACTIONS(21), - [anon_sym_const_assert] = ACTIONS(23), - [anon_sym_fn] = ACTIONS(25), - [anon_sym_enable] = ACTIONS(27), - [anon_sym_requires] = ACTIONS(29), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [2] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_continuing_statement] = STATE(882), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(8), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(8), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(41), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(59), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_continuing] = ACTIONS(63), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [3] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_continuing_statement] = STATE(786), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(4), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(4), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(69), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(59), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_continuing] = ACTIONS(63), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [4] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_continuing_statement] = STATE(815), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(8), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(8), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(71), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(59), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_continuing] = ACTIONS(63), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [5] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_continuing_statement] = STATE(815), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(6), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(6), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(71), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(59), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_continuing] = ACTIONS(63), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [6] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_continuing_statement] = STATE(844), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(8), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(8), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(73), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(59), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_continuing] = ACTIONS(63), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [7] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_continuing_statement] = STATE(844), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(2), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(2), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(73), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(59), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_continuing] = ACTIONS(63), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [8] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(8), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(8), - [sym_ident_pattern_token] = ACTIONS(75), - [anon_sym_SEMI] = ACTIONS(78), - [anon_sym_AT] = ACTIONS(81), - [anon_sym_LPAREN] = ACTIONS(84), - [anon_sym_const] = ACTIONS(87), - [anon_sym_LBRACE] = ACTIONS(90), - [anon_sym_RBRACE] = ACTIONS(93), - [anon_sym_let] = ACTIONS(87), - [anon_sym_var] = ACTIONS(95), - [anon_sym_STAR] = ACTIONS(98), - [anon_sym_AMP] = ACTIONS(98), - [anon_sym__] = ACTIONS(101), - [anon_sym_if] = ACTIONS(104), - [anon_sym_switch] = ACTIONS(107), - [anon_sym_loop] = ACTIONS(110), - [anon_sym_for] = ACTIONS(113), - [anon_sym_while] = ACTIONS(116), - [anon_sym_break] = ACTIONS(119), - [sym_continue_statement] = ACTIONS(122), - [anon_sym_continuing] = ACTIONS(125), - [anon_sym_return] = ACTIONS(127), - [anon_sym_const_assert] = ACTIONS(130), - [anon_sym_discard] = ACTIONS(122), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [9] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_break_if_statement] = STATE(839), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(12), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(12), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(133), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(135), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [10] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_break_if_statement] = STATE(889), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(8), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(8), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(137), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(135), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [11] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_break_if_statement] = STATE(868), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(10), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(10), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(139), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(135), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [12] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_break_if_statement] = STATE(868), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(8), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(8), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(139), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(135), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [13] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(14), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(14), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(141), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(59), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [14] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(8), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(8), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(143), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(59), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [15] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(16), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(16), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(143), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(59), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, - [16] = { - [sym_ident] = STATE(795), - [sym_align_attr] = STATE(554), - [sym_binding_attr] = STATE(554), - [sym_blend_src_attr] = STATE(554), - [sym_builtin_attr] = STATE(554), - [sym_const_attr] = STATE(554), - [sym_diagnostic_attr] = STATE(554), - [sym_group_attr] = STATE(554), - [sym_id_attr] = STATE(554), - [sym_interpolate_attr] = STATE(554), - [sym_invariant_attr] = STATE(554), - [sym_location_attr] = STATE(554), - [sym_must_use_attr] = STATE(554), - [sym_size_attr] = STATE(554), - [sym_workgroup_size_attr] = STATE(554), - [sym_vertex_attr] = STATE(554), - [sym_fragment_attr] = STATE(554), - [sym_compute_attr] = STATE(554), - [sym_attribute] = STATE(168), - [sym_template_elaborated_ident] = STATE(702), - [sym_variable_or_value_statement] = STATE(796), - [sym_variable_decl] = STATE(703), - [sym_call_phrase] = STATE(705), - [sym_lhs_expression] = STATE(437), - [sym_core_lhs_expression] = STATE(406), - [sym_compound_statement] = STATE(216), - [sym_assignment_statement] = STATE(706), - [sym_increment_statement] = STATE(706), - [sym_decrement_statement] = STATE(706), - [sym_if_statement] = STATE(216), - [sym_if_clause] = STATE(167), - [sym_switch_statement] = STATE(216), - [sym_loop_statement] = STATE(216), - [sym_for_statement] = STATE(216), - [sym_while_statement] = STATE(216), - [sym_break_statement] = STATE(796), - [sym_return_statement] = STATE(796), - [sym_func_call_statement] = STATE(796), - [sym_const_assert_statement] = STATE(796), - [sym_statement] = STATE(8), - [sym_variable_updating_statement] = STATE(796), - [aux_sym_struct_member_repeat1] = STATE(168), - [aux_sym_compound_statement_repeat1] = STATE(8), - [sym_ident_pattern_token] = ACTIONS(31), - [anon_sym_SEMI] = ACTIONS(33), - [anon_sym_AT] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(35), - [anon_sym_const] = ACTIONS(37), - [anon_sym_LBRACE] = ACTIONS(39), - [anon_sym_RBRACE] = ACTIONS(145), - [anon_sym_let] = ACTIONS(37), - [anon_sym_var] = ACTIONS(43), - [anon_sym_STAR] = ACTIONS(45), - [anon_sym_AMP] = ACTIONS(45), - [anon_sym__] = ACTIONS(47), - [anon_sym_if] = ACTIONS(49), - [anon_sym_switch] = ACTIONS(51), - [anon_sym_loop] = ACTIONS(53), - [anon_sym_for] = ACTIONS(55), - [anon_sym_while] = ACTIONS(57), - [anon_sym_break] = ACTIONS(59), - [sym_continue_statement] = ACTIONS(61), - [anon_sym_return] = ACTIONS(65), - [anon_sym_const_assert] = ACTIONS(67), - [anon_sym_discard] = ACTIONS(61), - [sym__comment] = ACTIONS(3), - [sym__blankspace] = ACTIONS(3), - [sym__block_comment] = ACTIONS(3), - }, -}; - -static const uint16_t ts_small_parse_table[] = { - [0] = 35, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(167), 1, - anon_sym_default, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(627), 1, - sym_case_selector, - STATE(633), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(161), 3, - anon_sym_AT, - anon_sym_LBRACE, - anon_sym_COLON, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [125] = 35, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(167), 1, - anon_sym_default, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(627), 1, - sym_case_selector, - STATE(633), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(169), 3, - anon_sym_AT, - anon_sym_LBRACE, - anon_sym_COLON, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [250] = 35, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(167), 1, - anon_sym_default, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(208), 1, - sym_case_selectors, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(623), 1, - sym_case_selector, - STATE(633), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [373] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(659), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(820), 1, - sym_template_arg_comma_list, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [493] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(167), 1, - anon_sym_default, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(627), 1, - sym_case_selector, - STATE(633), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [613] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(659), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(834), 1, - sym_template_arg_comma_list, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [733] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(659), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(758), 1, - sym_template_arg_comma_list, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [853] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(189), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(657), 1, - sym_expression, - STATE(762), 1, - sym_expression_comma_list, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [973] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(191), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(657), 1, - sym_expression, - STATE(826), 1, - sym_expression_comma_list, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [1093] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(193), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(657), 1, - sym_expression, - STATE(819), 1, - sym_expression_comma_list, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [1213] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(195), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(657), 1, - sym_expression, - STATE(833), 1, - sym_expression_comma_list, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [1333] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(659), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(827), 1, - sym_template_arg_comma_list, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [1453] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(197), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(657), 1, - sym_expression, - STATE(809), 1, - sym_expression_comma_list, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [1573] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(199), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(657), 1, - sym_expression, - STATE(840), 1, - sym_expression_comma_list, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [1693] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - ACTIONS(201), 1, - sym__template_args_end, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(692), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [1813] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(203), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(657), 1, - sym_expression, - STATE(799), 1, - sym_expression_comma_list, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [1933] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(205), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(657), 1, - sym_expression, - STATE(847), 1, - sym_expression_comma_list, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [2053] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(659), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(810), 1, - sym_template_arg_comma_list, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [2173] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(659), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(841), 1, - sym_template_arg_comma_list, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [2293] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(659), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(778), 1, - sym_template_arg_comma_list, - STATE(782), 1, - sym_ident, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [2413] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(659), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(800), 1, - sym_template_arg_comma_list, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [2533] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(207), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(657), 1, - sym_expression, - STATE(789), 1, - sym_expression_comma_list, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [2653] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - ACTIONS(209), 1, - sym__template_args_end, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(692), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [2773] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(211), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(657), 1, - sym_expression, - STATE(777), 1, - sym_expression_comma_list, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [2893] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(659), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(790), 1, - sym_template_arg_comma_list, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [3013] = 34, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(659), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(848), 1, - sym_template_arg_comma_list, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [3133] = 33, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(213), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(727), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [3250] = 33, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(215), 1, - anon_sym_SEMI, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(817), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [3367] = 33, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(310), 1, - sym_unary_expression, - STATE(311), 1, - sym_singular_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(628), 1, - sym_relational_expression, - STATE(692), 1, - sym_template_arg_expression, - STATE(732), 1, - sym_expression, - STATE(744), 1, - sym_bitwise_expression, - STATE(765), 1, - sym_short_circuit_and_expression, - STATE(766), 1, - sym_short_circuit_or_expression, - STATE(782), 1, - sym_ident, - STATE(853), 1, - sym_binary_or_expression, - STATE(854), 1, - sym_binary_and_expression, - STATE(855), 1, - sym_binary_xor_expression, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [3484] = 33, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(217), 1, - anon_sym_SEMI, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(857), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [3601] = 33, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(219), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(696), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [3718] = 33, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(221), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(697), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [3835] = 33, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(223), 1, - anon_sym_RPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(696), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [3952] = 33, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - ACTIONS(225), 1, - anon_sym_SEMI, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(751), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [4069] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(849), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [4183] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(811), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [4297] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(784), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [4411] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(761), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [4525] = 22, - ACTIONS(9), 1, - anon_sym_diagnostic, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(13), 1, - anon_sym_const, - ACTIONS(15), 1, - anon_sym_struct, - ACTIONS(17), 1, - anon_sym_alias, - ACTIONS(19), 1, - anon_sym_var, - ACTIONS(21), 1, - anon_sym_override, - ACTIONS(23), 1, - anon_sym_const_assert, - ACTIONS(25), 1, - anon_sym_fn, - ACTIONS(27), 1, - anon_sym_enable, - ACTIONS(29), 1, - anon_sym_requires, - ACTIONS(227), 1, - ts_builtin_sym_end, - ACTIONS(229), 1, - anon_sym_SEMI, - STATE(254), 1, - sym_function_header, - STATE(740), 1, - sym_variable_decl, - STATE(177), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - STATE(327), 2, - sym_global_directive, - aux_sym_translation_unit_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(102), 3, - sym_struct_decl, - sym_function_decl, - aux_sym_translation_unit_repeat2, - STATE(463), 3, - sym_diagnostic_directive, - sym_enable_directive, - sym_requires_directive, - STATE(886), 4, - sym_type_alias_decl, - sym_global_variable_decl, - sym_global_value_decl, - sym_const_assert_statement, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [4619] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(838), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [4733] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(248), 1, - sym_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [4847] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(816), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [4961] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(842), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [5075] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(845), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [5189] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(808), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [5303] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(805), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [5417] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(859), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [5531] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(255), 1, - sym_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [5645] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(264), 1, - sym_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [5759] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(793), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [5873] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(835), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [5987] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(708), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [6101] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(851), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [6215] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - STATE(885), 1, - sym_expression, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [6329] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(745), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [6443] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(746), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [6557] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(818), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [6671] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(696), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [6785] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(737), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [6899] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(779), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [7013] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(794), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [7127] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(767), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [7241] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(801), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [7355] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(725), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [7469] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(804), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [7583] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(791), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [7697] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(814), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [7811] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(806), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [7925] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(724), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [8039] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(241), 1, - sym_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [8153] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(239), 1, - sym_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [8267] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(238), 1, - sym_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [8381] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(831), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [8495] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(720), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [8609] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(757), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [8723] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(719), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [8837] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(821), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [8951] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(716), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [9065] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(824), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [9179] = 32, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(179), 1, - sym_unary_expression, - STATE(180), 1, - sym_singular_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(599), 1, - sym_relational_expression, - STATE(615), 1, - sym_bitwise_expression, - STATE(828), 1, - sym_expression, - STATE(860), 1, - sym_binary_xor_expression, - STATE(861), 1, - sym_binary_and_expression, - STATE(862), 1, - sym_binary_or_expression, - STATE(863), 1, - sym_short_circuit_or_expression, - STATE(864), 1, - sym_short_circuit_and_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [9293] = 25, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(180), 1, - sym_singular_expression, - STATE(240), 1, - sym_unary_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(439), 1, - sym_shift_expression, - STATE(605), 1, - sym_relational_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [9386] = 25, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(180), 1, - sym_singular_expression, - STATE(240), 1, - sym_unary_expression, - STATE(287), 1, - sym_multiplicative_expression, - STATE(335), 1, - sym_additive_expression, - STATE(423), 1, - sym_shift_expression, - STATE(604), 1, - sym_relational_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [9479] = 25, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(311), 1, - sym_singular_expression, - STATE(369), 1, - sym_unary_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(586), 1, - sym_shift_expression, - STATE(647), 1, - sym_relational_expression, - STATE(782), 1, - sym_ident, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [9572] = 25, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(311), 1, - sym_singular_expression, - STATE(369), 1, - sym_unary_expression, - STATE(397), 1, - sym_multiplicative_expression, - STATE(459), 1, - sym_additive_expression, - STATE(594), 1, - sym_shift_expression, - STATE(646), 1, - sym_relational_expression, - STATE(782), 1, - sym_ident, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [9665] = 17, - ACTIONS(231), 1, - ts_builtin_sym_end, - ACTIONS(233), 1, - anon_sym_SEMI, - ACTIONS(236), 1, - anon_sym_AT, - ACTIONS(239), 1, - anon_sym_const, - ACTIONS(242), 1, - anon_sym_struct, - ACTIONS(245), 1, - anon_sym_alias, - ACTIONS(248), 1, - anon_sym_var, - ACTIONS(251), 1, - anon_sym_override, - ACTIONS(254), 1, - anon_sym_const_assert, - ACTIONS(257), 1, - anon_sym_fn, - STATE(254), 1, - sym_function_header, - STATE(740), 1, - sym_variable_decl, - STATE(177), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(101), 3, - sym_struct_decl, - sym_function_decl, - aux_sym_translation_unit_repeat2, - STATE(886), 4, - sym_type_alias_decl, - sym_global_variable_decl, - sym_global_value_decl, - sym_const_assert_statement, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [9741] = 17, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(13), 1, - anon_sym_const, - ACTIONS(15), 1, - anon_sym_struct, - ACTIONS(17), 1, - anon_sym_alias, - ACTIONS(19), 1, - anon_sym_var, - ACTIONS(21), 1, - anon_sym_override, - ACTIONS(23), 1, - anon_sym_const_assert, - ACTIONS(25), 1, - anon_sym_fn, - ACTIONS(260), 1, - ts_builtin_sym_end, - ACTIONS(262), 1, - anon_sym_SEMI, - STATE(254), 1, - sym_function_header, - STATE(740), 1, - sym_variable_decl, - STATE(177), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(101), 3, - sym_struct_decl, - sym_function_decl, - aux_sym_translation_unit_repeat2, - STATE(886), 4, - sym_type_alias_decl, - sym_global_variable_decl, - sym_global_value_decl, - sym_const_assert_statement, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [9817] = 24, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(268), 1, - sym_hex_int_literal, - ACTIONS(272), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(276), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(278), 1, - anon_sym_LPAREN, - STATE(297), 1, - sym_template_elaborated_ident, - STATE(315), 1, - sym_primary_expression, - STATE(346), 1, - sym_decimal_int_literal, - STATE(358), 1, - sym_call_phrase, - STATE(403), 1, - sym_singular_expression, - STATE(428), 1, - sym_unary_expression, - STATE(447), 1, - sym_multiplicative_expression, - STATE(565), 1, - sym_additive_expression, - STATE(597), 1, - sym_shift_expression, - STATE(802), 1, - sym_ident, - ACTIONS(264), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(266), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(274), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(350), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(349), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(351), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(270), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(280), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [9907] = 24, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(286), 1, - sym_hex_int_literal, - ACTIONS(290), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(294), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(296), 1, - anon_sym_LPAREN, - STATE(425), 1, - sym_template_elaborated_ident, - STATE(457), 1, - sym_primary_expression, - STATE(461), 1, - sym_decimal_int_literal, - STATE(465), 1, - sym_call_phrase, - STATE(547), 1, - sym_unary_expression, - STATE(561), 1, - sym_singular_expression, - STATE(589), 1, - sym_multiplicative_expression, - STATE(612), 1, - sym_additive_expression, - STATE(635), 1, - sym_shift_expression, - STATE(750), 1, - sym_ident, - ACTIONS(282), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(284), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(292), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(460), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(464), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(481), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(288), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(298), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [9997] = 17, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(13), 1, - anon_sym_const, - ACTIONS(15), 1, - anon_sym_struct, - ACTIONS(17), 1, - anon_sym_alias, - ACTIONS(19), 1, - anon_sym_var, - ACTIONS(21), 1, - anon_sym_override, - ACTIONS(23), 1, - anon_sym_const_assert, - ACTIONS(25), 1, - anon_sym_fn, - ACTIONS(227), 1, - ts_builtin_sym_end, - ACTIONS(262), 1, - anon_sym_SEMI, - STATE(254), 1, - sym_function_header, - STATE(740), 1, - sym_variable_decl, - STATE(177), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(101), 3, - sym_struct_decl, - sym_function_decl, - aux_sym_translation_unit_repeat2, - STATE(886), 4, - sym_type_alias_decl, - sym_global_variable_decl, - sym_global_value_decl, - sym_const_assert_statement, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [10073] = 24, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(268), 1, - sym_hex_int_literal, - ACTIONS(272), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(276), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(278), 1, - anon_sym_LPAREN, - STATE(297), 1, - sym_template_elaborated_ident, - STATE(315), 1, - sym_primary_expression, - STATE(346), 1, - sym_decimal_int_literal, - STATE(358), 1, - sym_call_phrase, - STATE(403), 1, - sym_singular_expression, - STATE(413), 1, - sym_unary_expression, - STATE(426), 1, - sym_multiplicative_expression, - STATE(503), 1, - sym_additive_expression, - STATE(597), 1, - sym_shift_expression, - STATE(802), 1, - sym_ident, - ACTIONS(264), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(266), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(274), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(350), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(349), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(351), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(270), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(280), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [10163] = 24, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(286), 1, - sym_hex_int_literal, - ACTIONS(290), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(294), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(296), 1, - anon_sym_LPAREN, - STATE(425), 1, - sym_template_elaborated_ident, - STATE(457), 1, - sym_primary_expression, - STATE(461), 1, - sym_decimal_int_literal, - STATE(465), 1, - sym_call_phrase, - STATE(561), 1, - sym_singular_expression, - STATE(587), 1, - sym_unary_expression, - STATE(600), 1, - sym_multiplicative_expression, - STATE(618), 1, - sym_additive_expression, - STATE(635), 1, - sym_shift_expression, - STATE(750), 1, - sym_ident, - ACTIONS(282), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(284), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(292), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(460), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(464), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(481), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(288), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(298), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [10253] = 22, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(304), 1, - sym_hex_int_literal, - ACTIONS(308), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(312), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(314), 1, - anon_sym_LPAREN, - STATE(302), 1, - sym_template_elaborated_ident, - STATE(320), 1, - sym_primary_expression, - STATE(332), 1, - sym_call_phrase, - STATE(339), 1, - sym_decimal_int_literal, - STATE(416), 1, - sym_singular_expression, - STATE(450), 1, - sym_multiplicative_expression, - STATE(454), 1, - sym_unary_expression, - STATE(764), 1, - sym_ident, - ACTIONS(300), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(302), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(310), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(340), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(336), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(338), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(306), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(316), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [10337] = 22, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(322), 1, - sym_hex_int_literal, - ACTIONS(326), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(330), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(332), 1, - anon_sym_LPAREN, - STATE(466), 1, - sym_template_elaborated_ident, - STATE(504), 1, - sym_primary_expression, - STATE(548), 1, - sym_decimal_int_literal, - STATE(559), 1, - sym_call_phrase, - STATE(581), 1, - sym_multiplicative_expression, - STATE(591), 1, - sym_unary_expression, - STATE(602), 1, - sym_singular_expression, - STATE(843), 1, - sym_ident, - ACTIONS(318), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(320), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(328), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(555), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(552), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(556), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(324), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(334), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [10421] = 22, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(340), 1, - sym_hex_int_literal, - ACTIONS(344), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(348), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(350), 1, - anon_sym_LPAREN, - STATE(333), 1, - sym_template_elaborated_ident, - STATE(381), 1, - sym_primary_expression, - STATE(390), 1, - sym_call_phrase, - STATE(399), 1, - sym_decimal_int_literal, - STATE(421), 1, - sym_multiplicative_expression, - STATE(443), 1, - sym_singular_expression, - STATE(454), 1, - sym_unary_expression, - STATE(836), 1, - sym_ident, - ACTIONS(336), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(338), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(346), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(393), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(391), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(394), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(342), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(352), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [10505] = 22, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(358), 1, - sym_hex_int_literal, - ACTIONS(362), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(366), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(368), 1, - anon_sym_LPAREN, - STATE(435), 1, - sym_template_elaborated_ident, - STATE(440), 1, - sym_primary_expression, - STATE(470), 1, - sym_decimal_int_literal, - STATE(496), 1, - sym_call_phrase, - STATE(557), 1, - sym_singular_expression, - STATE(591), 1, - sym_unary_expression, - STATE(593), 1, - sym_multiplicative_expression, - STATE(829), 1, - sym_ident, - ACTIONS(354), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(356), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(364), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(474), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(467), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(493), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(360), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(370), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [10589] = 22, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(376), 1, - sym_hex_int_literal, - ACTIONS(380), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(384), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(386), 1, - anon_sym_LPAREN, - STATE(321), 1, - sym_template_elaborated_ident, - STATE(334), 1, - sym_primary_expression, - STATE(371), 1, - sym_call_phrase, - STATE(384), 1, - sym_decimal_int_literal, - STATE(388), 1, - sym_multiplicative_expression, - STATE(420), 1, - sym_unary_expression, - STATE(434), 1, - sym_singular_expression, - STATE(812), 1, - sym_ident, - ACTIONS(372), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(374), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(382), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(374), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(361), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(372), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(378), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(388), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [10673] = 22, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(394), 1, - sym_hex_int_literal, - ACTIONS(398), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(402), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(404), 1, - anon_sym_LPAREN, - STATE(188), 1, - sym_template_elaborated_ident, - STATE(213), 1, - sym_primary_expression, - STATE(270), 1, - sym_call_phrase, - STATE(280), 1, - sym_decimal_int_literal, - STATE(283), 1, - sym_multiplicative_expression, - STATE(301), 1, - sym_unary_expression, - STATE(309), 1, - sym_singular_expression, - STATE(792), 1, - sym_ident, - ACTIONS(390), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(392), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(400), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(274), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(273), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(276), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(396), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(406), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [10757] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(340), 1, - sym_hex_int_literal, - ACTIONS(344), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(348), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(350), 1, - anon_sym_LPAREN, - STATE(333), 1, - sym_template_elaborated_ident, - STATE(381), 1, - sym_primary_expression, - STATE(390), 1, - sym_call_phrase, - STATE(399), 1, - sym_decimal_int_literal, - STATE(436), 1, - sym_unary_expression, - STATE(443), 1, - sym_singular_expression, - STATE(836), 1, - sym_ident, - ACTIONS(336), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(338), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(346), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(393), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(391), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(394), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(342), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(352), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [10838] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(286), 1, - sym_hex_int_literal, - ACTIONS(290), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(294), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(296), 1, - anon_sym_LPAREN, - STATE(425), 1, - sym_template_elaborated_ident, - STATE(457), 1, - sym_primary_expression, - STATE(461), 1, - sym_decimal_int_literal, - STATE(465), 1, - sym_call_phrase, - STATE(506), 1, - sym_unary_expression, - STATE(561), 1, - sym_singular_expression, - STATE(750), 1, - sym_ident, - ACTIONS(282), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(284), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(292), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(460), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(464), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(481), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(288), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(298), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [10919] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(268), 1, - sym_hex_int_literal, - ACTIONS(272), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(276), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(278), 1, - anon_sym_LPAREN, - STATE(297), 1, - sym_template_elaborated_ident, - STATE(315), 1, - sym_primary_expression, - STATE(346), 1, - sym_decimal_int_literal, - STATE(358), 1, - sym_call_phrase, - STATE(403), 1, - sym_singular_expression, - STATE(408), 1, - sym_unary_expression, - STATE(802), 1, - sym_ident, - ACTIONS(264), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(266), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(274), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(350), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(349), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(351), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(270), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(280), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11000] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(358), 1, - sym_hex_int_literal, - ACTIONS(362), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(366), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(368), 1, - anon_sym_LPAREN, - STATE(435), 1, - sym_template_elaborated_ident, - STATE(440), 1, - sym_primary_expression, - STATE(470), 1, - sym_decimal_int_literal, - STATE(496), 1, - sym_call_phrase, - STATE(557), 1, - sym_singular_expression, - STATE(562), 1, - sym_unary_expression, - STATE(829), 1, - sym_ident, - ACTIONS(354), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(356), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(364), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(474), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(467), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(493), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(360), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(370), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11081] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(322), 1, - sym_hex_int_literal, - ACTIONS(326), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(330), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(332), 1, - anon_sym_LPAREN, - STATE(466), 1, - sym_template_elaborated_ident, - STATE(504), 1, - sym_primary_expression, - STATE(548), 1, - sym_decimal_int_literal, - STATE(559), 1, - sym_call_phrase, - STATE(602), 1, - sym_singular_expression, - STATE(632), 1, - sym_unary_expression, - STATE(843), 1, - sym_ident, - ACTIONS(318), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(320), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(328), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(555), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(552), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(556), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(324), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(334), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11162] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(358), 1, - sym_hex_int_literal, - ACTIONS(362), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(366), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(368), 1, - anon_sym_LPAREN, - STATE(435), 1, - sym_template_elaborated_ident, - STATE(440), 1, - sym_primary_expression, - STATE(470), 1, - sym_decimal_int_literal, - STATE(496), 1, - sym_call_phrase, - STATE(557), 1, - sym_singular_expression, - STATE(592), 1, - sym_unary_expression, - STATE(829), 1, - sym_ident, - ACTIONS(354), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(356), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(364), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(474), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(467), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(493), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(360), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(370), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11243] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(358), 1, - sym_hex_int_literal, - ACTIONS(362), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(366), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(368), 1, - anon_sym_LPAREN, - STATE(435), 1, - sym_template_elaborated_ident, - STATE(440), 1, - sym_primary_expression, - STATE(470), 1, - sym_decimal_int_literal, - STATE(496), 1, - sym_call_phrase, - STATE(557), 1, - sym_singular_expression, - STATE(632), 1, - sym_unary_expression, - STATE(829), 1, - sym_ident, - ACTIONS(354), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(356), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(364), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(474), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(467), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(493), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(360), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(370), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11324] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(304), 1, - sym_hex_int_literal, - ACTIONS(308), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(312), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(314), 1, - anon_sym_LPAREN, - STATE(302), 1, - sym_template_elaborated_ident, - STATE(320), 1, - sym_primary_expression, - STATE(332), 1, - sym_call_phrase, - STATE(339), 1, - sym_decimal_int_literal, - STATE(415), 1, - sym_unary_expression, - STATE(416), 1, - sym_singular_expression, - STATE(764), 1, - sym_ident, - ACTIONS(300), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(302), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(310), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(340), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(336), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(338), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(306), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(316), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11405] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(376), 1, - sym_hex_int_literal, - ACTIONS(380), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(384), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(386), 1, - anon_sym_LPAREN, - STATE(321), 1, - sym_template_elaborated_ident, - STATE(334), 1, - sym_primary_expression, - STATE(371), 1, - sym_call_phrase, - STATE(384), 1, - sym_decimal_int_literal, - STATE(429), 1, - sym_unary_expression, - STATE(434), 1, - sym_singular_expression, - STATE(812), 1, - sym_ident, - ACTIONS(372), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(374), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(382), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(374), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(361), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(372), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(378), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(388), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11486] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(340), 1, - sym_hex_int_literal, - ACTIONS(344), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(348), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(350), 1, - anon_sym_LPAREN, - STATE(333), 1, - sym_template_elaborated_ident, - STATE(381), 1, - sym_primary_expression, - STATE(390), 1, - sym_call_phrase, - STATE(399), 1, - sym_decimal_int_literal, - STATE(443), 1, - sym_singular_expression, - STATE(453), 1, - sym_unary_expression, - STATE(836), 1, - sym_ident, - ACTIONS(336), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(338), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(346), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(393), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(391), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(394), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(342), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(352), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11567] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(322), 1, - sym_hex_int_literal, - ACTIONS(326), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(330), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(332), 1, - anon_sym_LPAREN, - STATE(466), 1, - sym_template_elaborated_ident, - STATE(504), 1, - sym_primary_expression, - STATE(548), 1, - sym_decimal_int_literal, - STATE(559), 1, - sym_call_phrase, - STATE(601), 1, - sym_unary_expression, - STATE(602), 1, - sym_singular_expression, - STATE(843), 1, - sym_ident, - ACTIONS(318), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(320), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(328), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(555), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(552), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(556), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(324), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(334), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11648] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(151), 1, - sym_hex_int_literal, - ACTIONS(155), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(159), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(163), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_template_elaborated_ident, - STATE(149), 1, - sym_primary_expression, - STATE(154), 1, - sym_call_phrase, - STATE(166), 1, - sym_decimal_int_literal, - STATE(180), 1, - sym_singular_expression, - STATE(183), 1, - sym_unary_expression, - STATE(865), 1, - sym_ident, - ACTIONS(147), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(149), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(157), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(162), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(157), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(163), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(153), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(165), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11729] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(376), 1, - sym_hex_int_literal, - ACTIONS(380), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(384), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(386), 1, - anon_sym_LPAREN, - STATE(321), 1, - sym_template_elaborated_ident, - STATE(334), 1, - sym_primary_expression, - STATE(371), 1, - sym_call_phrase, - STATE(384), 1, - sym_decimal_int_literal, - STATE(434), 1, - sym_singular_expression, - STATE(580), 1, - sym_unary_expression, - STATE(812), 1, - sym_ident, - ACTIONS(372), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(374), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(382), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(374), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(361), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(372), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(378), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(388), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11810] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(394), 1, - sym_hex_int_literal, - ACTIONS(398), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(402), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(404), 1, - anon_sym_LPAREN, - STATE(188), 1, - sym_template_elaborated_ident, - STATE(213), 1, - sym_primary_expression, - STATE(270), 1, - sym_call_phrase, - STATE(280), 1, - sym_decimal_int_literal, - STATE(309), 1, - sym_singular_expression, - STATE(433), 1, - sym_unary_expression, - STATE(792), 1, - sym_ident, - ACTIONS(390), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(392), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(400), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(274), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(273), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(276), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(396), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(406), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11891] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(376), 1, - sym_hex_int_literal, - ACTIONS(380), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(384), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(386), 1, - anon_sym_LPAREN, - STATE(321), 1, - sym_template_elaborated_ident, - STATE(334), 1, - sym_primary_expression, - STATE(371), 1, - sym_call_phrase, - STATE(384), 1, - sym_decimal_int_literal, - STATE(424), 1, - sym_unary_expression, - STATE(434), 1, - sym_singular_expression, - STATE(812), 1, - sym_ident, - ACTIONS(372), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(374), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(382), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(374), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(361), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(372), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(378), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(388), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [11972] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(394), 1, - sym_hex_int_literal, - ACTIONS(398), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(402), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(404), 1, - anon_sym_LPAREN, - STATE(188), 1, - sym_template_elaborated_ident, - STATE(213), 1, - sym_primary_expression, - STATE(270), 1, - sym_call_phrase, - STATE(280), 1, - sym_decimal_int_literal, - STATE(303), 1, - sym_unary_expression, - STATE(309), 1, - sym_singular_expression, - STATE(792), 1, - sym_ident, - ACTIONS(390), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(392), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(400), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(274), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(273), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(276), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(396), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(406), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12053] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(358), 1, - sym_hex_int_literal, - ACTIONS(362), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(366), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(368), 1, - anon_sym_LPAREN, - STATE(435), 1, - sym_template_elaborated_ident, - STATE(440), 1, - sym_primary_expression, - STATE(470), 1, - sym_decimal_int_literal, - STATE(496), 1, - sym_call_phrase, - STATE(557), 1, - sym_singular_expression, - STATE(645), 1, - sym_unary_expression, - STATE(829), 1, - sym_ident, - ACTIONS(354), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(356), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(364), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(474), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(467), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(493), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(360), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(370), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12134] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(358), 1, - sym_hex_int_literal, - ACTIONS(362), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(366), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(368), 1, - anon_sym_LPAREN, - STATE(435), 1, - sym_template_elaborated_ident, - STATE(440), 1, - sym_primary_expression, - STATE(470), 1, - sym_decimal_int_literal, - STATE(496), 1, - sym_call_phrase, - STATE(557), 1, - sym_singular_expression, - STATE(644), 1, - sym_unary_expression, - STATE(829), 1, - sym_ident, - ACTIONS(354), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(356), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(364), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(474), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(467), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(493), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(360), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(370), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12215] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(358), 1, - sym_hex_int_literal, - ACTIONS(362), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(366), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(368), 1, - anon_sym_LPAREN, - STATE(435), 1, - sym_template_elaborated_ident, - STATE(440), 1, - sym_primary_expression, - STATE(470), 1, - sym_decimal_int_literal, - STATE(496), 1, - sym_call_phrase, - STATE(557), 1, - sym_singular_expression, - STATE(643), 1, - sym_unary_expression, - STATE(829), 1, - sym_ident, - ACTIONS(354), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(356), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(364), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(474), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(467), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(493), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(360), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(370), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12296] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(322), 1, - sym_hex_int_literal, - ACTIONS(326), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(330), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(332), 1, - anon_sym_LPAREN, - STATE(466), 1, - sym_template_elaborated_ident, - STATE(504), 1, - sym_primary_expression, - STATE(548), 1, - sym_decimal_int_literal, - STATE(559), 1, - sym_call_phrase, - STATE(592), 1, - sym_unary_expression, - STATE(602), 1, - sym_singular_expression, - STATE(843), 1, - sym_ident, - ACTIONS(318), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(320), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(328), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(555), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(552), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(556), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(324), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(334), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12377] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(175), 1, - sym_hex_int_literal, - ACTIONS(179), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(183), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(185), 1, - anon_sym_LPAREN, - STATE(189), 1, - sym_template_elaborated_ident, - STATE(228), 1, - sym_primary_expression, - STATE(265), 1, - sym_decimal_int_literal, - STATE(269), 1, - sym_call_phrase, - STATE(311), 1, - sym_singular_expression, - STATE(312), 1, - sym_unary_expression, - STATE(782), 1, - sym_ident, - ACTIONS(171), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(173), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(181), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(245), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(244), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - STATE(249), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - ACTIONS(177), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(187), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12458] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(304), 1, - sym_hex_int_literal, - ACTIONS(308), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(312), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(314), 1, - anon_sym_LPAREN, - STATE(302), 1, - sym_template_elaborated_ident, - STATE(320), 1, - sym_primary_expression, - STATE(332), 1, - sym_call_phrase, - STATE(339), 1, - sym_decimal_int_literal, - STATE(416), 1, - sym_singular_expression, - STATE(606), 1, - sym_unary_expression, - STATE(764), 1, - sym_ident, - ACTIONS(300), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(302), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(310), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(340), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(336), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(338), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(306), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(316), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12539] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(304), 1, - sym_hex_int_literal, - ACTIONS(308), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(312), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(314), 1, - anon_sym_LPAREN, - STATE(302), 1, - sym_template_elaborated_ident, - STATE(320), 1, - sym_primary_expression, - STATE(332), 1, - sym_call_phrase, - STATE(339), 1, - sym_decimal_int_literal, - STATE(416), 1, - sym_singular_expression, - STATE(607), 1, - sym_unary_expression, - STATE(764), 1, - sym_ident, - ACTIONS(300), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(302), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(310), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(340), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(336), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(338), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(306), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(316), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12620] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(304), 1, - sym_hex_int_literal, - ACTIONS(308), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(312), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(314), 1, - anon_sym_LPAREN, - STATE(302), 1, - sym_template_elaborated_ident, - STATE(320), 1, - sym_primary_expression, - STATE(332), 1, - sym_call_phrase, - STATE(339), 1, - sym_decimal_int_literal, - STATE(416), 1, - sym_singular_expression, - STATE(608), 1, - sym_unary_expression, - STATE(764), 1, - sym_ident, - ACTIONS(300), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(302), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(310), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(340), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(336), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(338), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(306), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(316), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12701] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(394), 1, - sym_hex_int_literal, - ACTIONS(398), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(402), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(404), 1, - anon_sym_LPAREN, - STATE(188), 1, - sym_template_elaborated_ident, - STATE(213), 1, - sym_primary_expression, - STATE(270), 1, - sym_call_phrase, - STATE(280), 1, - sym_decimal_int_literal, - STATE(308), 1, - sym_unary_expression, - STATE(309), 1, - sym_singular_expression, - STATE(792), 1, - sym_ident, - ACTIONS(390), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(392), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(400), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(274), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(273), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(276), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(396), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(406), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12782] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(340), 1, - sym_hex_int_literal, - ACTIONS(344), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(348), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(350), 1, - anon_sym_LPAREN, - STATE(333), 1, - sym_template_elaborated_ident, - STATE(381), 1, - sym_primary_expression, - STATE(390), 1, - sym_call_phrase, - STATE(399), 1, - sym_decimal_int_literal, - STATE(443), 1, - sym_singular_expression, - STATE(603), 1, - sym_unary_expression, - STATE(836), 1, - sym_ident, - ACTIONS(336), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(338), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(346), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(393), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(391), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(394), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(342), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(352), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12863] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(304), 1, - sym_hex_int_literal, - ACTIONS(308), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(312), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(314), 1, - anon_sym_LPAREN, - STATE(302), 1, - sym_template_elaborated_ident, - STATE(320), 1, - sym_primary_expression, - STATE(332), 1, - sym_call_phrase, - STATE(339), 1, - sym_decimal_int_literal, - STATE(416), 1, - sym_singular_expression, - STATE(603), 1, - sym_unary_expression, - STATE(764), 1, - sym_ident, - ACTIONS(300), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(302), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(310), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(340), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(336), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(338), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(306), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(316), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [12944] = 21, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(304), 1, - sym_hex_int_literal, - ACTIONS(308), 1, - aux_sym_decimal_float_literal_token4, - ACTIONS(312), 1, - aux_sym_hex_float_literal_token2, - ACTIONS(314), 1, - anon_sym_LPAREN, - STATE(302), 1, - sym_template_elaborated_ident, - STATE(320), 1, - sym_primary_expression, - STATE(332), 1, - sym_call_phrase, - STATE(339), 1, - sym_decimal_int_literal, - STATE(416), 1, - sym_singular_expression, - STATE(453), 1, - sym_unary_expression, - STATE(764), 1, - sym_ident, - ACTIONS(300), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(302), 2, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - ACTIONS(310), 2, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - STATE(340), 2, - sym_decimal_float_literal, - sym_hex_float_literal, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(336), 3, - sym_literal, - sym_call_expression, - sym_paren_expression, - STATE(338), 3, - sym_bool_literal, - sym_int_literal, - sym_float_literal, - ACTIONS(306), 4, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - ACTIONS(316), 5, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [13025] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(408), 8, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(410), 23, - anon_sym_const, - anon_sym_struct, - anon_sym_alias, - anon_sym_let, - anon_sym_var, - anon_sym_override, - anon_sym__, - anon_sym_if, - anon_sym_else, - anon_sym_switch, - anon_sym_case, - anon_sym_default, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - anon_sym_fn, - sym_ident_pattern_token, - [13066] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(412), 8, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(414), 23, - anon_sym_const, - anon_sym_struct, - anon_sym_alias, - anon_sym_let, - anon_sym_var, - anon_sym_override, - anon_sym__, - anon_sym_if, - anon_sym_else, - anon_sym_switch, - anon_sym_case, - anon_sym_default, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - anon_sym_fn, - sym_ident_pattern_token, - [13107] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(416), 8, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(418), 23, - anon_sym_const, - anon_sym_struct, - anon_sym_alias, - anon_sym_let, - anon_sym_var, - anon_sym_override, - anon_sym__, - anon_sym_if, - anon_sym_else, - anon_sym_switch, - anon_sym_case, - anon_sym_default, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - anon_sym_fn, - sym_ident_pattern_token, - [13148] = 5, - ACTIONS(424), 1, - sym__template_args_start, - STATE(150), 1, - sym_template_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(422), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(420), 25, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13192] = 6, - ACTIONS(428), 1, - anon_sym_AT, - ACTIONS(431), 1, - anon_sym_LBRACE, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(426), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [13238] = 5, - ACTIONS(435), 1, - anon_sym_LPAREN, - STATE(159), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(437), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(433), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13281] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(441), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(439), 25, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13319] = 6, - ACTIONS(445), 1, - anon_sym_DOT, - ACTIONS(447), 1, - anon_sym_LBRACK, - STATE(181), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(449), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(443), 22, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13363] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(453), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(451), 25, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13401] = 6, - ACTIONS(445), 1, - anon_sym_DOT, - ACTIONS(447), 1, - anon_sym_LBRACK, - STATE(184), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(457), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(455), 22, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13445] = 6, - ACTIONS(445), 1, - anon_sym_DOT, - ACTIONS(447), 1, - anon_sym_LBRACK, - STATE(182), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(461), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(459), 22, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13489] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(465), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(463), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13526] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(469), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(467), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13563] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(473), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(471), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13600] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(477), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(475), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13637] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(437), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(433), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13674] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(481), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(479), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13711] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(485), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(483), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13748] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(465), 11, - anon_sym_var, - anon_sym_override, - anon_sym_SLASH, - anon_sym_PIPE, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - ACTIONS(463), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13785] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(489), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(487), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13822] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(493), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(491), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13859] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(495), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13896] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(501), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(499), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13933] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(505), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(503), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [13970] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(509), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(507), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14007] = 6, - ACTIONS(515), 1, - anon_sym_else, - STATE(194), 1, - sym_else_clause, - STATE(171), 2, - sym_else_if_clause, - aux_sym_if_statement_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(513), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(511), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [14050] = 11, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(517), 1, - anon_sym_LBRACE, - ACTIONS(519), 1, - anon_sym_if, - ACTIONS(521), 1, - anon_sym_switch, - ACTIONS(523), 1, - anon_sym_loop, - ACTIONS(525), 1, - anon_sym_for, - ACTIONS(527), 1, - anon_sym_while, - STATE(172), 1, - sym_if_clause, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [14103] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(489), 11, - anon_sym_var, - anon_sym_override, - anon_sym_SLASH, - anon_sym_PIPE, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - ACTIONS(487), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14140] = 6, - ACTIONS(515), 1, - anon_sym_else, - STATE(201), 1, - sym_else_clause, - STATE(175), 2, - sym_else_if_clause, - aux_sym_if_statement_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(531), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(529), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [14183] = 6, - ACTIONS(515), 1, - anon_sym_else, - STATE(220), 1, - sym_else_clause, - STATE(175), 2, - sym_else_if_clause, - aux_sym_if_statement_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(535), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(533), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [14226] = 6, - ACTIONS(515), 1, - anon_sym_else, - STATE(220), 1, - sym_else_clause, - STATE(170), 2, - sym_else_if_clause, - aux_sym_if_statement_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(535), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(533), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [14269] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(539), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(537), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14306] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(543), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(541), 24, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14343] = 5, - ACTIONS(549), 1, - anon_sym_else, - STATE(175), 2, - sym_else_if_clause, - aux_sym_if_statement_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(547), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(545), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [14383] = 9, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(552), 1, - sym_ident_pattern_token, - ACTIONS(554), 1, - anon_sym_RPAREN, - STATE(648), 1, - sym_param, - STATE(755), 1, - sym_param_list, - STATE(756), 1, - sym_ident, - STATE(261), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [14430] = 9, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(19), 1, - anon_sym_var, - ACTIONS(25), 1, - anon_sym_fn, - ACTIONS(556), 1, - anon_sym_override, - STATE(277), 1, - sym_function_header, - STATE(688), 1, - sym_variable_decl, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [14477] = 5, - ACTIONS(558), 1, - sym__template_args_start, - STATE(221), 1, - sym_template_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(422), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(420), 20, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14516] = 7, - ACTIONS(562), 1, - anon_sym_AMP, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(566), 1, - anon_sym_PIPE, - ACTIONS(568), 1, - anon_sym_CARET, - ACTIONS(570), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [14559] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(574), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(572), 22, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14594] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(578), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(576), 22, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14629] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(457), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(455), 22, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14664] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(582), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(580), 22, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14699] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(586), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(584), 22, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14734] = 5, - ACTIONS(422), 1, - anon_sym_SLASH, - ACTIONS(588), 1, - sym__template_args_start, - STATE(217), 1, - sym_template_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(420), 22, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [14773] = 8, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(590), 1, - sym_ident_pattern_token, - ACTIONS(592), 1, - anon_sym_RBRACE, - STATE(687), 1, - sym_struct_member, - STATE(760), 1, - sym_member_ident, - STATE(253), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [14817] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(596), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(594), 17, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_else, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [14851] = 5, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(598), 1, - anon_sym_LPAREN, - STATE(266), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [14889] = 5, - ACTIONS(600), 1, - anon_sym_LPAREN, - STATE(237), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(437), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(433), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [14927] = 8, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(590), 1, - sym_ident_pattern_token, - ACTIONS(602), 1, - anon_sym_RBRACE, - STATE(687), 1, - sym_struct_member, - STATE(760), 1, - sym_member_ident, - STATE(253), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [14971] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(606), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(604), 17, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_else, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15005] = 8, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(552), 1, - sym_ident_pattern_token, - ACTIONS(608), 1, - anon_sym_RPAREN, - STATE(689), 1, - sym_param, - STATE(756), 1, - sym_ident, - STATE(261), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [15049] = 8, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(552), 1, - sym_ident_pattern_token, - ACTIONS(610), 1, - anon_sym_RPAREN, - STATE(689), 1, - sym_param, - STATE(756), 1, - sym_ident, - STATE(261), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [15093] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(535), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(533), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15126] = 6, - ACTIONS(612), 1, - anon_sym_DOT, - ACTIONS(614), 1, - anon_sym_LBRACK, - STATE(299), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(457), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(455), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [15165] = 7, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(691), 1, - sym_template_elaborated_ident, - STATE(764), 1, - sym_ident, - STATE(222), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [15206] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(620), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(618), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15239] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(624), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(622), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15272] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(628), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(626), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15305] = 5, - ACTIONS(630), 1, - sym__template_args_start, - STATE(293), 1, - sym_template_list, - ACTIONS(422), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(420), 19, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [15342] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(634), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(632), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15375] = 7, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(590), 1, - sym_ident_pattern_token, - STATE(687), 1, - sym_struct_member, - STATE(760), 1, - sym_member_ident, - STATE(253), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [15416] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(638), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(636), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15449] = 7, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(729), 1, - sym_template_elaborated_ident, - STATE(764), 1, - sym_ident, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [15490] = 7, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - ACTIONS(640), 1, - anon_sym_COLON, - STATE(673), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [15531] = 7, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(552), 1, - sym_ident_pattern_token, - STATE(689), 1, - sym_param, - STATE(756), 1, - sym_ident, - STATE(261), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [15572] = 6, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(642), 1, - anon_sym_DOT, - ACTIONS(644), 1, - anon_sym_LBRACK, - STATE(307), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [15611] = 7, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - ACTIONS(646), 1, - anon_sym_COLON, - STATE(663), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [15652] = 3, - ACTIONS(441), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(439), 22, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [15685] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(650), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(648), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15718] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(654), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(652), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15751] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(658), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(656), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15784] = 6, - ACTIONS(449), 1, - anon_sym_SLASH, - ACTIONS(642), 1, - anon_sym_DOT, - ACTIONS(644), 1, - anon_sym_LBRACK, - STATE(304), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(443), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [15823] = 7, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(713), 1, - sym_template_elaborated_ident, - STATE(764), 1, - sym_ident, - STATE(204), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [15864] = 6, - ACTIONS(461), 1, - anon_sym_SLASH, - ACTIONS(642), 1, - anon_sym_DOT, - ACTIONS(644), 1, - anon_sym_LBRACK, - STATE(306), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(459), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [15903] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(662), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(660), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [15936] = 3, - ACTIONS(453), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(451), 22, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [15969] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(666), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(664), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [16002] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(670), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(668), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [16035] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(531), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(529), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [16068] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(453), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(451), 20, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [16101] = 7, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(713), 1, - sym_template_elaborated_ident, - STATE(764), 1, - sym_ident, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [16142] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(674), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(672), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [16175] = 6, - ACTIONS(612), 1, - anon_sym_DOT, - ACTIONS(614), 1, - anon_sym_LBRACK, - STATE(294), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(461), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(459), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [16214] = 18, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(35), 1, - anon_sym_LPAREN, - ACTIONS(43), 1, - anon_sym_var, - ACTIONS(47), 1, - anon_sym__, - ACTIONS(676), 1, - anon_sym_SEMI, - STATE(406), 1, - sym_core_lhs_expression, - STATE(437), 1, - sym_lhs_expression, - STATE(702), 1, - sym_template_elaborated_ident, - STATE(703), 1, - sym_variable_decl, - STATE(705), 1, - sym_call_phrase, - STATE(749), 1, - sym_for_init, - STATE(795), 1, - sym_ident, - STATE(823), 1, - sym_for_header, - ACTIONS(37), 2, - anon_sym_const, - anon_sym_let, - ACTIONS(45), 2, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(706), 3, - sym_assignment_statement, - sym_increment_statement, - sym_decrement_statement, - STATE(787), 3, - sym_variable_or_value_statement, - sym_func_call_statement, - sym_variable_updating_statement, - [16277] = 7, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(590), 1, - sym_ident_pattern_token, - STATE(655), 1, - sym_struct_member, - STATE(760), 1, - sym_member_ident, - STATE(253), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [16318] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(680), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(678), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [16351] = 6, - ACTIONS(612), 1, - anon_sym_DOT, - ACTIONS(614), 1, - anon_sym_LBRACK, - STATE(305), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(449), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(443), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [16390] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(684), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(682), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [16423] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(688), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(686), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [16456] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(692), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(690), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [16489] = 7, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - ACTIONS(694), 1, - anon_sym_if, - STATE(219), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [16530] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(441), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(439), 20, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [16563] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(698), 7, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(696), 16, - anon_sym_const, - anon_sym_let, - anon_sym_var, - anon_sym__, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_break, - sym_continue_statement, - anon_sym_continuing, - anon_sym_return, - anon_sym_const_assert, - anon_sym_discard, - sym_ident_pattern_token, - [16596] = 18, - ACTIONS(31), 1, - sym_ident_pattern_token, - ACTIONS(35), 1, - anon_sym_LPAREN, - ACTIONS(43), 1, - anon_sym_var, - ACTIONS(47), 1, - anon_sym__, - ACTIONS(676), 1, - anon_sym_SEMI, - STATE(406), 1, - sym_core_lhs_expression, - STATE(437), 1, - sym_lhs_expression, - STATE(702), 1, - sym_template_elaborated_ident, - STATE(703), 1, - sym_variable_decl, - STATE(705), 1, - sym_call_phrase, - STATE(749), 1, - sym_for_init, - STATE(788), 1, - sym_for_header, - STATE(795), 1, - sym_ident, - ACTIONS(37), 2, - anon_sym_const, - anon_sym_let, - ACTIONS(45), 2, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(706), 3, - sym_assignment_statement, - sym_increment_statement, - sym_decrement_statement, - STATE(787), 3, - sym_variable_or_value_statement, - sym_func_call_statement, - sym_variable_updating_statement, - [16659] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(477), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(475), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [16691] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(485), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(483), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [16723] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - STATE(191), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [16761] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(700), 1, - anon_sym_LBRACE, - STATE(203), 1, - sym_switch_body, - STATE(284), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [16799] = 4, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(570), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [16833] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - STATE(211), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [16871] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(539), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(537), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [16903] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(501), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(499), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [16935] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(497), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(495), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [16967] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(493), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(491), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [16999] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - STATE(223), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [17037] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(543), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(541), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [17069] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - STATE(187), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [17107] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(437), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(433), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [17139] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(473), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(471), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [17171] = 3, - ACTIONS(441), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(439), 20, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - sym_ident_pattern_token, - [17203] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(489), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(487), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [17235] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(590), 1, - sym_ident_pattern_token, - STATE(783), 1, - sym_member_ident, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [17273] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - STATE(585), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [17311] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - STATE(198), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [17349] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - STATE(656), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [17387] = 3, - ACTIONS(489), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [17419] = 3, - ACTIONS(473), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(471), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [17451] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - STATE(230), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [17489] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(481), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(479), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [17521] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(552), 1, - sym_ident_pattern_token, - STATE(785), 1, - sym_ident, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [17559] = 3, - ACTIONS(505), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(503), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [17591] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(465), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(463), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [17623] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(700), 1, - anon_sym_LBRACE, - STATE(197), 1, - sym_switch_body, - STATE(284), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [17661] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(509), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(507), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [17693] = 3, - ACTIONS(485), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(483), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [17725] = 3, - ACTIONS(465), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(463), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [17757] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(505), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(503), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [17789] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(469), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(467), 19, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [17821] = 3, - ACTIONS(469), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(467), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [17853] = 3, - ACTIONS(481), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(479), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [17885] = 3, - ACTIONS(477), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(475), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [17917] = 3, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [17949] = 3, - ACTIONS(493), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(491), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [17981] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - STATE(662), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [18019] = 3, - ACTIONS(497), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(495), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18051] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(39), 1, - anon_sym_LBRACE, - STATE(579), 1, - sym_compound_statement, - STATE(289), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [18089] = 3, - ACTIONS(501), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(499), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18121] = 3, - ACTIONS(539), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18153] = 3, - ACTIONS(509), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(507), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18185] = 6, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(702), 1, - anon_sym_LBRACE, - STATE(813), 1, - sym_continuing_compound_statement, - STATE(292), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [18223] = 3, - ACTIONS(543), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 21, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18255] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(129), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(704), 17, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18290] = 5, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(710), 1, - anon_sym_LBRACE, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [18325] = 5, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(712), 1, - anon_sym_LBRACE, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [18360] = 5, - ACTIONS(422), 1, - anon_sym_SLASH, - ACTIONS(714), 1, - sym__template_args_start, - STATE(316), 1, - sym_template_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(420), 18, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18395] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(129), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(716), 17, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18430] = 5, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(718), 1, - anon_sym_LBRACE, - STATE(291), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [18465] = 5, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(517), 1, - anon_sym_LBRACE, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [18500] = 5, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(720), 1, - anon_sym_LBRACE, - STATE(285), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [18535] = 5, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(720), 1, - anon_sym_LBRACE, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [18570] = 5, - ACTIONS(11), 1, - anon_sym_AT, - ACTIONS(722), 1, - anon_sym_LBRACE, - STATE(146), 2, - sym_attribute, - aux_sym_struct_member_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(554), 17, - sym_align_attr, - sym_binding_attr, - sym_blend_src_attr, - sym_builtin_attr, - sym_const_attr, - sym_diagnostic_attr, - sym_group_attr, - sym_id_attr, - sym_interpolate_attr, - sym_invariant_attr, - sym_location_attr, - sym_must_use_attr, - sym_size_attr, - sym_workgroup_size_attr, - sym_vertex_attr, - sym_fragment_attr, - sym_compute_attr, - [18605] = 3, - ACTIONS(453), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(451), 19, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [18636] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(457), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(455), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [18666] = 5, - ACTIONS(422), 1, - anon_sym_SLASH, - ACTIONS(724), 1, - sym__template_args_start, - STATE(344), 1, - sym_template_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(420), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18700] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(726), 8, - anon_sym_true, - anon_sym_false, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - sym_hex_int_literal, - aux_sym_decimal_float_literal_token4, - aux_sym_hex_float_literal_token2, - sym_ident_pattern_token, - ACTIONS(728), 12, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [18730] = 5, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(730), 1, - anon_sym_LPAREN, - STATE(331), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18764] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(732), 8, - anon_sym_true, - anon_sym_false, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - sym_hex_int_literal, - aux_sym_decimal_float_literal_token4, - aux_sym_hex_float_literal_token2, - sym_ident_pattern_token, - ACTIONS(734), 12, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [18794] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(586), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(584), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [18824] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(736), 8, - anon_sym_true, - anon_sym_false, - aux_sym_decimal_int_literal_token1, - aux_sym_decimal_int_literal_token2, - sym_hex_int_literal, - aux_sym_decimal_float_literal_token4, - aux_sym_hex_float_literal_token2, - sym_ident_pattern_token, - ACTIONS(738), 12, - aux_sym_decimal_float_literal_token1, - aux_sym_decimal_float_literal_token2, - aux_sym_decimal_float_literal_token3, - aux_sym_decimal_float_literal_token5, - aux_sym_hex_float_literal_token1, - aux_sym_hex_float_literal_token3, - anon_sym_LPAREN, - anon_sym_DASH, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_STAR, - anon_sym_AMP, - [18854] = 3, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18884] = 5, - ACTIONS(740), 1, - anon_sym_LPAREN, - STATE(328), 1, - sym_argument_expression_list, - ACTIONS(437), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [18918] = 3, - ACTIONS(744), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(742), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18948] = 3, - ACTIONS(578), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(576), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [18978] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(578), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(576), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19008] = 3, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19038] = 3, - ACTIONS(586), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(584), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19068] = 3, - ACTIONS(582), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(580), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19098] = 3, - ACTIONS(574), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(572), 19, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19128] = 7, - ACTIONS(562), 1, - anon_sym_AMP, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(566), 1, - anon_sym_PIPE, - ACTIONS(568), 1, - anon_sym_CARET, - ACTIONS(746), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19166] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(574), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(572), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19196] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(582), 3, - anon_sym_AMP, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(580), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__shift_left, - sym__greater_than, - sym__greater_than_equal, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19226] = 3, - ACTIONS(441), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(439), 18, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19255] = 6, - ACTIONS(461), 1, - anon_sym_SLASH, - ACTIONS(748), 1, - anon_sym_DOT, - ACTIONS(750), 1, - anon_sym_LBRACK, - STATE(409), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(459), 15, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19290] = 6, - ACTIONS(449), 1, - anon_sym_SLASH, - ACTIONS(748), 1, - anon_sym_DOT, - ACTIONS(750), 1, - anon_sym_LBRACK, - STATE(410), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(443), 15, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19325] = 3, - ACTIONS(453), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(451), 18, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19354] = 6, - ACTIONS(752), 1, - anon_sym_DOT, - ACTIONS(754), 1, - anon_sym_LBRACK, - STATE(387), 1, - sym_component_or_swizzle_specifier, - ACTIONS(461), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(459), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19389] = 6, - ACTIONS(752), 1, - anon_sym_DOT, - ACTIONS(754), 1, - anon_sym_LBRACK, - STATE(385), 1, - sym_component_or_swizzle_specifier, - ACTIONS(457), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19424] = 5, - ACTIONS(422), 1, - anon_sym_SLASH, - ACTIONS(756), 1, - sym__template_args_start, - STATE(376), 1, - sym_template_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(420), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19457] = 6, - ACTIONS(752), 1, - anon_sym_DOT, - ACTIONS(754), 1, - anon_sym_LBRACK, - STATE(412), 1, - sym_component_or_swizzle_specifier, - ACTIONS(449), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(443), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19492] = 5, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(758), 1, - anon_sym_LPAREN, - STATE(366), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19525] = 6, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(748), 1, - anon_sym_DOT, - ACTIONS(750), 1, - anon_sym_LBRACK, - STATE(404), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 15, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19560] = 3, - ACTIONS(477), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(475), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19588] = 3, - ACTIONS(539), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19616] = 3, - ACTIONS(505), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(503), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19644] = 3, - ACTIONS(473), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(471), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19672] = 8, - ACTIONS(762), 1, - anon_sym_diagnostic, - ACTIONS(765), 1, - anon_sym_const, - ACTIONS(767), 1, - anon_sym_enable, - ACTIONS(770), 1, - anon_sym_requires, - STATE(327), 2, - sym_global_directive, - aux_sym_translation_unit_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(463), 3, - sym_diagnostic_directive, - sym_enable_directive, - sym_requires_directive, - ACTIONS(760), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [19710] = 3, - ACTIONS(485), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(483), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19738] = 3, - ACTIONS(465), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(463), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19766] = 19, - ACTIONS(773), 1, - sym_ident_pattern_token, - ACTIONS(775), 1, - anon_sym_diagnostic, - ACTIONS(777), 1, - anon_sym_align, - ACTIONS(779), 1, - anon_sym_binding, - ACTIONS(781), 1, - anon_sym_blend_src, - ACTIONS(783), 1, - anon_sym_builtin, - ACTIONS(785), 1, - anon_sym_const, - ACTIONS(787), 1, - anon_sym_group, - ACTIONS(789), 1, - anon_sym_id, - ACTIONS(791), 1, - anon_sym_interpolate, - ACTIONS(793), 1, - anon_sym_invariant, - ACTIONS(795), 1, - anon_sym_location, - ACTIONS(797), 1, - anon_sym_must_use, - ACTIONS(799), 1, - anon_sym_size, - ACTIONS(801), 1, - anon_sym_workgroup_size, - ACTIONS(803), 1, - anon_sym_vertex, - ACTIONS(805), 1, - anon_sym_fragment, - ACTIONS(807), 1, - anon_sym_compute, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [19826] = 3, - ACTIONS(485), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(483), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19854] = 3, - ACTIONS(469), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(467), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [19882] = 5, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(809), 1, - anon_sym_LPAREN, - STATE(407), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19914] = 6, - ACTIONS(449), 1, - anon_sym_SLASH, - ACTIONS(811), 1, - anon_sym_DOT, - ACTIONS(813), 1, - anon_sym_LBRACK, - STATE(431), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(443), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19948] = 4, - STATE(113), 1, - sym_additive_operator, - ACTIONS(817), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(815), 15, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [19978] = 3, - ACTIONS(437), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [20006] = 3, - ACTIONS(481), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(479), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20034] = 3, - ACTIONS(497), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(495), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [20062] = 3, - ACTIONS(509), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(507), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [20090] = 3, - ACTIONS(493), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(491), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [20118] = 5, - ACTIONS(420), 1, - anon_sym_LPAREN, - ACTIONS(630), 1, - sym__template_args_start, - STATE(293), 1, - sym_template_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(819), 15, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_DOT, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [20150] = 3, - ACTIONS(489), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20178] = 3, - ACTIONS(473), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(471), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20206] = 3, - ACTIONS(453), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(451), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20234] = 3, - ACTIONS(543), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20262] = 3, - ACTIONS(509), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(507), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20290] = 3, - ACTIONS(539), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20318] = 3, - ACTIONS(501), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(499), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20346] = 3, - ACTIONS(497), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(495), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20374] = 3, - ACTIONS(493), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(491), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20402] = 3, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20430] = 3, - ACTIONS(477), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(475), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20458] = 3, - ACTIONS(501), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(499), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [20486] = 3, - ACTIONS(543), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [20514] = 3, - ACTIONS(441), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(439), 17, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20542] = 6, - ACTIONS(461), 1, - anon_sym_SLASH, - ACTIONS(811), 1, - anon_sym_DOT, - ACTIONS(813), 1, - anon_sym_LBRACK, - STATE(419), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(459), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20576] = 3, - ACTIONS(481), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(479), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [20604] = 3, - ACTIONS(469), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(467), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20632] = 3, - ACTIONS(505), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(503), 17, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20660] = 6, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(811), 1, - anon_sym_DOT, - ACTIONS(813), 1, - anon_sym_LBRACK, - STATE(422), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20694] = 3, - ACTIONS(497), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(495), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20721] = 3, - ACTIONS(505), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(503), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20748] = 14, - ACTIONS(35), 1, - anon_sym_LPAREN, - ACTIONS(47), 1, - anon_sym__, - ACTIONS(616), 1, - sym_ident_pattern_token, - ACTIONS(821), 1, - anon_sym_RPAREN, - STATE(406), 1, - sym_core_lhs_expression, - STATE(437), 1, - sym_lhs_expression, - STATE(702), 1, - sym_template_elaborated_ident, - STATE(705), 1, - sym_call_phrase, - STATE(795), 1, - sym_ident, - STATE(890), 1, - sym_for_update, - ACTIONS(45), 2, - anon_sym_STAR, - anon_sym_AMP, - STATE(852), 2, - sym_func_call_statement, - sym_variable_updating_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(706), 3, - sym_assignment_statement, - sym_increment_statement, - sym_decrement_statement, - [20797] = 3, - ACTIONS(477), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(475), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20824] = 3, - ACTIONS(481), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(479), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20851] = 3, - ACTIONS(485), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(483), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20878] = 3, - ACTIONS(465), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(463), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20905] = 14, - ACTIONS(35), 1, - anon_sym_LPAREN, - ACTIONS(47), 1, - anon_sym__, - ACTIONS(616), 1, - sym_ident_pattern_token, - ACTIONS(823), 1, - anon_sym_RPAREN, - STATE(406), 1, - sym_core_lhs_expression, - STATE(437), 1, - sym_lhs_expression, - STATE(702), 1, - sym_template_elaborated_ident, - STATE(705), 1, - sym_call_phrase, - STATE(795), 1, - sym_ident, - STATE(870), 1, - sym_for_update, - ACTIONS(45), 2, - anon_sym_STAR, - anon_sym_AMP, - STATE(852), 2, - sym_func_call_statement, - sym_variable_updating_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(706), 3, - sym_assignment_statement, - sym_increment_statement, - sym_decrement_statement, - [20954] = 4, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(746), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [20983] = 3, - ACTIONS(473), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(471), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21010] = 3, - ACTIONS(469), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(467), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21037] = 3, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21064] = 6, - ACTIONS(461), 1, - anon_sym_SLASH, - ACTIONS(825), 1, - anon_sym_DOT, - ACTIONS(827), 1, - anon_sym_LBRACK, - STATE(448), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(459), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21097] = 3, - ACTIONS(493), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(491), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21124] = 3, - ACTIONS(441), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(439), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21151] = 3, - ACTIONS(453), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(451), 16, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21178] = 3, - ACTIONS(489), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21205] = 3, - ACTIONS(543), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21232] = 6, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(825), 1, - anon_sym_DOT, - ACTIONS(827), 1, - anon_sym_LBRACK, - STATE(441), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21265] = 3, - ACTIONS(501), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(499), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21292] = 6, - ACTIONS(449), 1, - anon_sym_SLASH, - ACTIONS(825), 1, - anon_sym_DOT, - ACTIONS(827), 1, - anon_sym_LBRACK, - STATE(455), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(443), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21325] = 3, - ACTIONS(539), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21352] = 14, - ACTIONS(35), 1, - anon_sym_LPAREN, - ACTIONS(47), 1, - anon_sym__, - ACTIONS(616), 1, - sym_ident_pattern_token, - ACTIONS(829), 1, - anon_sym_RPAREN, - STATE(406), 1, - sym_core_lhs_expression, - STATE(437), 1, - sym_lhs_expression, - STATE(702), 1, - sym_template_elaborated_ident, - STATE(705), 1, - sym_call_phrase, - STATE(795), 1, - sym_ident, - STATE(850), 1, - sym_for_update, - ACTIONS(45), 2, - anon_sym_STAR, - anon_sym_AMP, - STATE(852), 2, - sym_func_call_statement, - sym_variable_updating_statement, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - STATE(706), 3, - sym_assignment_statement, - sym_increment_statement, - sym_decrement_statement, - [21401] = 3, - ACTIONS(509), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(507), 16, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21428] = 3, - ACTIONS(586), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(584), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [21454] = 3, - ACTIONS(543), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21480] = 3, - ACTIONS(457), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [21506] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(128), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(704), 12, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21536] = 5, - ACTIONS(831), 1, - anon_sym_DOT, - ACTIONS(833), 1, - anon_sym_LBRACK, - STATE(492), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(459), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [21566] = 3, - ACTIONS(469), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(467), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21592] = 3, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21618] = 5, - ACTIONS(831), 1, - anon_sym_DOT, - ACTIONS(833), 1, - anon_sym_LBRACK, - STATE(483), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [21648] = 3, - ACTIONS(493), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(491), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21674] = 3, - ACTIONS(497), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(495), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21700] = 3, - ACTIONS(501), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(499), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21726] = 3, - ACTIONS(465), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(463), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21752] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(128), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(716), 12, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21782] = 3, - ACTIONS(539), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21808] = 3, - ACTIONS(509), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(507), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21834] = 3, - ACTIONS(473), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(471), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21860] = 3, - ACTIONS(505), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(503), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21886] = 3, - ACTIONS(489), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21912] = 3, - ACTIONS(574), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(572), 15, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21938] = 3, - ACTIONS(586), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(584), 15, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21964] = 5, - ACTIONS(422), 1, - anon_sym_SLASH, - ACTIONS(835), 1, - sym__template_args_start, - STATE(438), 1, - sym_template_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(420), 13, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [21994] = 5, - ACTIONS(831), 1, - anon_sym_DOT, - ACTIONS(833), 1, - anon_sym_LBRACK, - STATE(462), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(837), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [22024] = 3, - ACTIONS(485), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(483), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22050] = 3, - ACTIONS(582), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(580), 15, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22076] = 3, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 15, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22102] = 3, - ACTIONS(578), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(576), 15, - sym__shift_left, - sym__shift_right, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22128] = 3, - ACTIONS(477), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(475), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22154] = 3, - ACTIONS(578), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(576), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [22180] = 4, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(839), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22208] = 3, - ACTIONS(481), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(479), 15, - anon_sym_SEMI, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22234] = 3, - ACTIONS(582), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(580), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [22260] = 3, - ACTIONS(574), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(572), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [22286] = 5, - ACTIONS(841), 1, - sym__template_args_start, - STATE(445), 1, - sym_template_list, - ACTIONS(422), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(420), 12, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [22316] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(475), 15, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_DOT, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [22339] = 3, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22364] = 3, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22389] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(123), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(704), 11, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22418] = 3, - ACTIONS(586), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(584), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22443] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(845), 6, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(843), 9, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22468] = 3, - ACTIONS(744), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(742), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22493] = 5, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(847), 1, - anon_sym_LPAREN, - STATE(478), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22522] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(123), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(716), 11, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22551] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(479), 15, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_DOT, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [22574] = 4, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(849), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 12, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - [22601] = 3, - ACTIONS(582), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(580), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22626] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(851), 15, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_DOT, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [22649] = 3, - ACTIONS(578), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(576), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22674] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(819), 15, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_DOT, - anon_sym_EQ, - anon_sym_LBRACK, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [22697] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(853), 15, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22720] = 3, - ACTIONS(574), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(572), 14, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22745] = 5, - ACTIONS(855), 1, - anon_sym_LPAREN, - STATE(488), 1, - sym_argument_expression_list, - ACTIONS(437), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [22774] = 3, - ACTIONS(582), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(580), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22798] = 6, - ACTIONS(857), 1, - anon_sym_EQ, - ACTIONS(861), 1, - anon_sym_PLUS_PLUS, - ACTIONS(863), 1, - anon_sym_DASH_DASH, - STATE(68), 1, - sym_compound_assignment_operator, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(859), 10, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - [22828] = 3, - ACTIONS(453), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(451), 13, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22852] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(865), 6, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(843), 8, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_PIPE_PIPE, - [22876] = 6, - ACTIONS(867), 1, - anon_sym_DOT, - ACTIONS(869), 1, - anon_sym_LBRACK, - STATE(543), 1, - sym_component_or_swizzle_specifier, - ACTIONS(449), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(443), 9, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [22906] = 3, - ACTIONS(586), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(584), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22930] = 6, - ACTIONS(461), 1, - anon_sym_SLASH, - ACTIONS(871), 1, - anon_sym_DOT, - ACTIONS(873), 1, - anon_sym_LBRACK, - STATE(544), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(459), 10, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22960] = 3, - ACTIONS(574), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(572), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [22984] = 6, - ACTIONS(867), 1, - anon_sym_DOT, - ACTIONS(869), 1, - anon_sym_LBRACK, - STATE(536), 1, - sym_component_or_swizzle_specifier, - ACTIONS(461), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(459), 9, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23014] = 3, - ACTIONS(453), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(451), 12, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23038] = 3, - ACTIONS(441), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(439), 12, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23062] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(141), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(716), 10, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - [23090] = 3, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23114] = 5, - ACTIONS(422), 1, - anon_sym_SLASH, - ACTIONS(875), 1, - sym__template_args_start, - STATE(499), 1, - sym_template_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(420), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23142] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(141), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(704), 10, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - [23170] = 6, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(871), 1, - anon_sym_DOT, - ACTIONS(873), 1, - anon_sym_LBRACK, - STATE(524), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 10, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23200] = 6, - ACTIONS(867), 1, - anon_sym_DOT, - ACTIONS(869), 1, - anon_sym_LBRACK, - STATE(540), 1, - sym_component_or_swizzle_specifier, - ACTIONS(457), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 9, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23230] = 3, - ACTIONS(744), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(742), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23254] = 3, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23278] = 3, - ACTIONS(578), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(576), 13, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23302] = 3, - ACTIONS(441), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(439), 13, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23326] = 6, - ACTIONS(449), 1, - anon_sym_SLASH, - ACTIONS(871), 1, - anon_sym_DOT, - ACTIONS(873), 1, - anon_sym_LBRACK, - STATE(571), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(443), 10, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23356] = 3, - ACTIONS(465), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(463), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23379] = 4, - STATE(112), 1, - sym_additive_operator, - ACTIONS(817), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(815), 10, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23404] = 3, - ACTIONS(493), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(491), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23427] = 3, - ACTIONS(509), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(507), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23450] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(877), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [23471] = 3, - ACTIONS(881), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(879), 12, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_diagnostic, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - anon_sym_enable, - anon_sym_requires, - [23494] = 3, - ACTIONS(497), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(495), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23517] = 3, - ACTIONS(469), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(467), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23540] = 5, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(883), 1, - anon_sym_LPAREN, - STATE(564), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23567] = 3, - ACTIONS(437), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23590] = 3, - ACTIONS(539), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23613] = 3, - ACTIONS(473), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(471), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23636] = 3, - ACTIONS(509), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(507), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23659] = 3, - ACTIONS(489), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23682] = 3, - ACTIONS(481), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(479), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23705] = 3, - ACTIONS(887), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(885), 12, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_diagnostic, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - anon_sym_enable, - anon_sym_requires, - [23728] = 3, - ACTIONS(493), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(491), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23751] = 3, - ACTIONS(477), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(475), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23774] = 3, - ACTIONS(891), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(889), 12, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_diagnostic, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - anon_sym_enable, - anon_sym_requires, - [23797] = 3, - ACTIONS(543), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23820] = 3, - ACTIONS(485), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(483), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23843] = 5, - ACTIONS(740), 1, - anon_sym_LPAREN, - STATE(510), 1, - sym_argument_expression_list, - ACTIONS(895), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(893), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [23870] = 3, - ACTIONS(543), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23893] = 3, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23916] = 3, - ACTIONS(501), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(499), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [23939] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(584), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [23960] = 3, - ACTIONS(501), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(499), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [23983] = 3, - ACTIONS(539), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24006] = 3, - ACTIONS(489), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24029] = 3, - ACTIONS(481), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(479), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24052] = 3, - ACTIONS(485), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(483), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [24075] = 3, - ACTIONS(473), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(471), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [24098] = 3, - ACTIONS(899), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(897), 12, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_diagnostic, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - anon_sym_enable, - anon_sym_requires, - [24121] = 3, - ACTIONS(505), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(503), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24144] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 13, - sym__shift_left_assign, - sym__shift_right_assign, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_AMP_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_PLUS_PLUS, - anon_sym_DASH_DASH, - [24165] = 3, - ACTIONS(497), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(495), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [24188] = 3, - ACTIONS(465), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(463), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [24211] = 3, - ACTIONS(505), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(503), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [24234] = 3, - ACTIONS(469), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(467), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [24257] = 3, - ACTIONS(477), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(475), 12, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24280] = 3, - ACTIONS(441), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(439), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24302] = 3, - ACTIONS(453), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(451), 11, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LPAREN, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24324] = 6, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(901), 1, - anon_sym_DOT, - ACTIONS(903), 1, - anon_sym_LBRACK, - STATE(598), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24352] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(907), 3, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(905), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24374] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(911), 3, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(909), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24396] = 4, - STATE(110), 1, - sym_additive_operator, - ACTIONS(817), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(815), 9, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24420] = 6, - ACTIONS(449), 1, - anon_sym_SLASH, - ACTIONS(901), 1, - anon_sym_DOT, - ACTIONS(903), 1, - anon_sym_LBRACK, - STATE(595), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(443), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24448] = 6, - ACTIONS(461), 1, - anon_sym_SLASH, - ACTIONS(901), 1, - anon_sym_DOT, - ACTIONS(903), 1, - anon_sym_LBRACK, - STATE(596), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(459), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24476] = 3, - ACTIONS(582), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(580), 10, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24497] = 3, - ACTIONS(915), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(913), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24518] = 4, - ACTIONS(590), 1, - sym_ident_pattern_token, - STATE(317), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(917), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [24541] = 4, - ACTIONS(919), 1, - sym_ident_pattern_token, - STATE(152), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(921), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [24564] = 3, - ACTIONS(925), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(923), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24585] = 3, - ACTIONS(501), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(499), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24606] = 3, - ACTIONS(929), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(927), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24627] = 3, - ACTIONS(933), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(931), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24648] = 3, - ACTIONS(937), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(935), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24669] = 3, - ACTIONS(941), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(939), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24690] = 4, - ACTIONS(943), 1, - sym_ident_pattern_token, - STATE(356), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(945), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [24713] = 4, - ACTIONS(947), 1, - sym_ident_pattern_token, - STATE(314), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(949), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [24736] = 4, - ACTIONS(951), 1, - sym_ident_pattern_token, - STATE(442), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(953), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [24759] = 4, - ACTIONS(955), 1, - sym_ident_pattern_token, - STATE(215), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(957), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [24782] = 3, - ACTIONS(961), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(959), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24803] = 3, - ACTIONS(965), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(963), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24824] = 4, - ACTIONS(967), 1, - sym_ident_pattern_token, - STATE(444), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(969), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [24847] = 3, - ACTIONS(973), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(971), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24868] = 3, - ACTIONS(586), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(584), 10, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [24889] = 3, - ACTIONS(977), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(975), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24910] = 3, - ACTIONS(981), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(979), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24931] = 3, - ACTIONS(985), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(983), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24952] = 3, - ACTIONS(989), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(987), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24973] = 3, - ACTIONS(993), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(991), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [24994] = 3, - ACTIONS(997), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(995), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25015] = 3, - ACTIONS(1001), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(999), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25036] = 3, - ACTIONS(1005), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1003), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25057] = 3, - ACTIONS(1009), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1007), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25078] = 3, - ACTIONS(1013), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1011), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25099] = 3, - ACTIONS(1017), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1015), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25120] = 3, - ACTIONS(457), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 9, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [25141] = 3, - ACTIONS(1021), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1019), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25162] = 3, - ACTIONS(1025), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1023), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25183] = 3, - ACTIONS(1029), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1027), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25204] = 3, - ACTIONS(586), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(584), 9, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [25225] = 3, - ACTIONS(473), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(471), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25246] = 3, - ACTIONS(543), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(541), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25267] = 3, - ACTIONS(578), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(576), 9, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [25288] = 3, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 10, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25309] = 3, - ACTIONS(1033), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1031), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25330] = 3, - ACTIONS(1037), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1035), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25351] = 4, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(1039), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25374] = 3, - ACTIONS(509), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(507), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25395] = 3, - ACTIONS(539), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(537), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25416] = 4, - ACTIONS(1041), 1, - sym_ident_pattern_token, - STATE(224), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1043), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [25439] = 4, - ACTIONS(1045), 1, - sym_ident_pattern_token, - STATE(373), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1047), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [25462] = 3, - ACTIONS(497), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(495), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25483] = 4, - ACTIONS(1049), 1, - sym_ident_pattern_token, - STATE(505), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1051), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [25506] = 3, - ACTIONS(1055), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1053), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25527] = 3, - ACTIONS(493), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(491), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25548] = 3, - ACTIONS(437), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(433), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25569] = 3, - ACTIONS(574), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(572), 9, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [25590] = 3, - ACTIONS(1059), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1057), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25611] = 3, - ACTIONS(469), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(467), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25632] = 4, - ACTIONS(1061), 1, - sym_ident_pattern_token, - STATE(389), 2, - sym_member_ident, - sym_swizzle_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1063), 8, - aux_sym_swizzle_name_token1, - aux_sym_swizzle_name_token2, - aux_sym_swizzle_name_token3, - aux_sym_swizzle_name_token4, - aux_sym_swizzle_name_token5, - aux_sym_swizzle_name_token6, - aux_sym_swizzle_name_token7, - aux_sym_swizzle_name_token8, - [25655] = 3, - ACTIONS(574), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(572), 10, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25676] = 3, - ACTIONS(582), 2, - anon_sym_SLASH, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(580), 9, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_AMP, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - anon_sym_CARET, - [25697] = 3, - ACTIONS(1067), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1065), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25718] = 3, - ACTIONS(485), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(483), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25739] = 4, - STATE(108), 1, - sym_additive_operator, - ACTIONS(817), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(815), 8, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_PIPE_PIPE, - [25762] = 3, - ACTIONS(1071), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1069), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25783] = 3, - ACTIONS(1075), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1073), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25804] = 3, - ACTIONS(1079), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1077), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25825] = 3, - ACTIONS(481), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(479), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25846] = 3, - ACTIONS(465), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(463), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25867] = 3, - ACTIONS(578), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(576), 10, - sym__template_args_end, - sym__shift_left, - sym__shift_right, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25888] = 3, - ACTIONS(477), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(475), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25909] = 3, - ACTIONS(1083), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1081), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25930] = 3, - ACTIONS(505), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(503), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [25951] = 3, - ACTIONS(1087), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1085), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25972] = 3, - ACTIONS(1091), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1089), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [25993] = 3, - ACTIONS(489), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(487), 10, - sym__template_args_end, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26014] = 3, - ACTIONS(1095), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1093), 9, - anon_sym_var, - anon_sym_override, - anon_sym_if, - anon_sym_switch, - anon_sym_loop, - anon_sym_for, - anon_sym_while, - anon_sym_fn, - sym_ident_pattern_token, - [26035] = 3, - ACTIONS(1099), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1097), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [26055] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(853), 10, - sym__template_args_end, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_COMMA, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26073] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(133), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(704), 6, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26097] = 3, - ACTIONS(1103), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1101), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [26117] = 3, - ACTIONS(1105), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(231), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [26137] = 3, - ACTIONS(1109), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1107), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [26157] = 3, - ACTIONS(1113), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1111), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [26177] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(843), 4, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - ACTIONS(1115), 6, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [26197] = 4, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(1117), 2, - sym__shift_left, - sym__shift_right, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 7, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - [26219] = 3, - ACTIONS(1121), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1119), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [26239] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(133), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(716), 6, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26263] = 3, - ACTIONS(1125), 1, - anon_sym_const, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1123), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_AT, - anon_sym_struct, - anon_sym_alias, - anon_sym_var, - anon_sym_override, - anon_sym_const_assert, - anon_sym_fn, - [26283] = 3, - ACTIONS(564), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(560), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26302] = 3, - ACTIONS(744), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(742), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26321] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(119), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(704), 5, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - [26344] = 3, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(843), 3, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_PIPE_PIPE, - ACTIONS(1127), 6, - sym__less_than, - sym__less_than_equal, - sym__greater_than, - sym__greater_than_equal, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [26363] = 3, - ACTIONS(578), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(576), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26382] = 3, - ACTIONS(457), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(455), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26401] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1129), 9, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26418] = 3, - ACTIONS(586), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(584), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26437] = 4, - ACTIONS(1133), 1, - anon_sym_AMP_AMP, - ACTIONS(1135), 1, - anon_sym_PIPE_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1131), 7, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [26458] = 5, - ACTIONS(708), 1, - anon_sym_SLASH, - STATE(119), 1, - sym_multiplicative_operator, - ACTIONS(706), 2, - anon_sym_STAR, - anon_sym_PERCENT, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(716), 5, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_PIPE_PIPE, - [26481] = 3, - ACTIONS(582), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(580), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26500] = 3, - ACTIONS(574), 1, - anon_sym_SLASH, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(572), 8, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_PERCENT, - anon_sym_PLUS, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26519] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(853), 9, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26536] = 3, - ACTIONS(1139), 1, - anon_sym_AMP_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1137), 7, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [26554] = 3, - ACTIONS(1141), 1, - anon_sym_PIPE_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1137), 7, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [26572] = 3, - ACTIONS(1145), 1, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1143), 7, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [26590] = 3, - ACTIONS(1147), 1, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1143), 7, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [26608] = 3, - ACTIONS(1149), 1, - anon_sym_CARET, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1143), 7, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [26626] = 7, - ACTIONS(616), 1, - sym_ident_pattern_token, - ACTIONS(1151), 1, - anon_sym_LPAREN, - STATE(634), 1, - sym_core_lhs_expression, - STATE(753), 1, - sym_lhs_expression, - STATE(754), 1, - sym_ident, - ACTIONS(1153), 2, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [26651] = 7, - ACTIONS(35), 1, - anon_sym_LPAREN, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(406), 1, - sym_core_lhs_expression, - STATE(462), 1, - sym_lhs_expression, - STATE(780), 1, - sym_ident, - ACTIONS(45), 2, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [26676] = 7, - ACTIONS(616), 1, - sym_ident_pattern_token, - ACTIONS(1151), 1, - anon_sym_LPAREN, - STATE(634), 1, - sym_core_lhs_expression, - STATE(754), 1, - sym_ident, - STATE(781), 1, - sym_lhs_expression, - ACTIONS(1153), 2, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [26701] = 4, - STATE(109), 1, - sym_additive_operator, - ACTIONS(817), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(815), 4, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [26720] = 6, - ACTIONS(1155), 1, - anon_sym_RBRACE, - ACTIONS(1157), 1, - anon_sym_case, - ACTIONS(1159), 1, - anon_sym_default, - STATE(617), 2, - sym_switch_clause, - aux_sym_switch_body_repeat1, - STATE(684), 2, - sym_case_clause, - sym_default_alone_clause, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [26743] = 6, - ACTIONS(1157), 1, - anon_sym_case, - ACTIONS(1159), 1, - anon_sym_default, - ACTIONS(1161), 1, - anon_sym_RBRACE, - STATE(617), 2, - sym_switch_clause, - aux_sym_switch_body_repeat1, - STATE(684), 2, - sym_case_clause, - sym_default_alone_clause, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [26766] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1131), 7, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_RPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_RBRACK, - [26781] = 7, - ACTIONS(616), 1, - sym_ident_pattern_token, - ACTIONS(1151), 1, - anon_sym_LPAREN, - STATE(634), 1, - sym_core_lhs_expression, - STATE(754), 1, - sym_ident, - STATE(895), 1, - sym_lhs_expression, - ACTIONS(1153), 2, - anon_sym_STAR, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [26806] = 6, - ACTIONS(1163), 1, - anon_sym_RBRACE, - ACTIONS(1165), 1, - anon_sym_case, - ACTIONS(1168), 1, - anon_sym_default, - STATE(617), 2, - sym_switch_clause, - aux_sym_switch_body_repeat1, - STATE(684), 2, - sym_case_clause, - sym_default_alone_clause, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [26829] = 4, - STATE(111), 1, - sym_additive_operator, - ACTIONS(817), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(815), 3, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_PIPE_PIPE, - [26847] = 5, - ACTIONS(1157), 1, - anon_sym_case, - ACTIONS(1159), 1, - anon_sym_default, - STATE(614), 2, - sym_switch_clause, - aux_sym_switch_body_repeat1, - STATE(684), 2, - sym_case_clause, - sym_default_alone_clause, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [26867] = 5, - ACTIONS(1157), 1, - anon_sym_case, - ACTIONS(1159), 1, - anon_sym_default, - STATE(613), 2, - sym_switch_clause, - aux_sym_switch_body_repeat1, - STATE(684), 2, - sym_case_clause, - sym_default_alone_clause, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [26887] = 4, - ACTIONS(1171), 1, - anon_sym_COMMA, - STATE(624), 1, - aux_sym_case_selectors_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(169), 3, - anon_sym_AT, - anon_sym_LBRACE, - anon_sym_COLON, - [26904] = 6, - ACTIONS(552), 1, - sym_ident_pattern_token, - ACTIONS(630), 1, - sym__template_args_start, - STATE(658), 1, - sym_ident, - STATE(679), 1, - sym_template_list, - STATE(700), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [26925] = 4, - ACTIONS(1173), 1, - anon_sym_COMMA, - STATE(621), 1, - aux_sym_case_selectors_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1175), 3, - anon_sym_AT, - anon_sym_LBRACE, - anon_sym_COLON, - [26942] = 4, - ACTIONS(1177), 1, - anon_sym_COMMA, - STATE(624), 1, - aux_sym_case_selectors_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1180), 3, - anon_sym_AT, - anon_sym_LBRACE, - anon_sym_COLON, - [26959] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1182), 5, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_COLON, - anon_sym_EQ, - [26972] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1184), 5, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_RBRACE, - anon_sym_EQ, - [26985] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1180), 4, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LBRACE, - anon_sym_COLON, - [26997] = 4, - ACTIONS(1133), 1, - anon_sym_AMP_AMP, - ACTIONS(1135), 1, - anon_sym_PIPE_PIPE, - ACTIONS(1131), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27013] = 5, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(626), 1, - sym_template_elaborated_ident, - STATE(694), 1, - sym_type_specifier, - STATE(764), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27031] = 5, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(626), 1, - sym_template_elaborated_ident, - STATE(714), 1, - sym_type_specifier, - STATE(764), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27049] = 5, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(626), 1, - sym_template_elaborated_ident, - STATE(690), 1, - sym_type_specifier, - STATE(764), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27067] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(853), 4, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [27079] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1186), 4, - anon_sym_COMMA, - anon_sym_AT, - anon_sym_LBRACE, - anon_sym_COLON, - [27091] = 5, - ACTIONS(752), 1, - anon_sym_DOT, - ACTIONS(754), 1, - anon_sym_LBRACK, - ACTIONS(837), 1, - anon_sym_RPAREN, - STATE(895), 1, - sym_component_or_swizzle_specifier, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27109] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1129), 4, - sym__template_args_end, - anon_sym_COMMA, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - [27121] = 5, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(626), 1, - sym_template_elaborated_ident, - STATE(712), 1, - sym_type_specifier, - STATE(764), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27139] = 5, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(626), 1, - sym_template_elaborated_ident, - STATE(748), 1, - sym_type_specifier, - STATE(764), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27157] = 5, - ACTIONS(616), 1, - sym_ident_pattern_token, - STATE(626), 1, - sym_template_elaborated_ident, - STATE(759), 1, - sym_type_specifier, - STATE(764), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27175] = 4, - ACTIONS(1188), 1, - anon_sym_SEMI, - ACTIONS(1190), 1, - anon_sym_COMMA, - STATE(639), 1, - aux_sym_enable_extension_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27190] = 4, - ACTIONS(1193), 1, - anon_sym_COMMA, - ACTIONS(1196), 1, - anon_sym_RBRACE, - STATE(640), 1, - aux_sym_struct_body_decl_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27205] = 4, - ACTIONS(552), 1, - sym_ident_pattern_token, - STATE(658), 1, - sym_ident, - STATE(869), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27220] = 3, - ACTIONS(1200), 1, - anon_sym_DASH_GT, - ACTIONS(1198), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27233] = 3, - ACTIONS(1149), 1, - anon_sym_CARET, - ACTIONS(1143), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27246] = 3, - ACTIONS(1147), 1, - anon_sym_AMP, - ACTIONS(1143), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27259] = 3, - ACTIONS(1145), 1, - anon_sym_PIPE, - ACTIONS(1143), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27272] = 3, - ACTIONS(1141), 1, - anon_sym_PIPE_PIPE, - ACTIONS(1137), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27285] = 3, - ACTIONS(1139), 1, - anon_sym_AMP_AMP, - ACTIONS(1137), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27298] = 4, - ACTIONS(1202), 1, - anon_sym_COMMA, - ACTIONS(1204), 1, - anon_sym_RPAREN, - STATE(674), 1, - aux_sym_param_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27313] = 4, - ACTIONS(1206), 1, - sym_ident_pattern_token, - ACTIONS(1208), 1, - anon_sym_SEMI, - STATE(743), 1, - sym_enable_extension_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27328] = 4, - ACTIONS(552), 1, - sym_ident_pattern_token, - STATE(658), 1, - sym_ident, - STATE(735), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27343] = 4, - ACTIONS(1210), 1, - sym_ident_pattern_token, - ACTIONS(1212), 1, - anon_sym_SEMI, - STATE(741), 1, - sym_software_extension_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27358] = 4, - ACTIONS(1206), 1, - sym_ident_pattern_token, - STATE(666), 1, - sym_enable_extension_name, - STATE(856), 1, - sym_enable_extension_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27373] = 4, - ACTIONS(1210), 1, - sym_ident_pattern_token, - STATE(668), 1, - sym_software_extension_name, - STATE(846), 1, - sym_software_extension_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27388] = 4, - ACTIONS(1214), 1, - anon_sym_SEMI, - ACTIONS(1216), 1, - anon_sym_COMMA, - STATE(654), 1, - aux_sym_software_extension_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27403] = 4, - ACTIONS(1219), 1, - anon_sym_COMMA, - ACTIONS(1221), 1, - anon_sym_RBRACE, - STATE(670), 1, - aux_sym_struct_body_decl_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27418] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1223), 3, - anon_sym_RBRACE, - anon_sym_case, - anon_sym_default, - [27429] = 4, - ACTIONS(1225), 1, - anon_sym_COMMA, - ACTIONS(1227), 1, - anon_sym_RPAREN, - STATE(667), 1, - aux_sym_expression_comma_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27444] = 3, - ACTIONS(1231), 1, - anon_sym_COLON, - ACTIONS(1229), 2, - anon_sym_SEMI, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27457] = 4, - ACTIONS(1233), 1, - anon_sym_COMMA, - ACTIONS(1235), 1, - sym__template_args_end, - STATE(671), 1, - aux_sym_template_arg_comma_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27472] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1237), 3, - anon_sym_DOT, - anon_sym_COMMA, - anon_sym_RPAREN, - [27483] = 3, - ACTIONS(1239), 1, - anon_sym_DOT, - ACTIONS(1241), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27496] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1243), 3, - anon_sym_RBRACE, - anon_sym_case, - anon_sym_default, - [27507] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1245), 3, - anon_sym_RBRACE, - anon_sym_case, - anon_sym_default, - [27518] = 4, - ACTIONS(1206), 1, - sym_ident_pattern_token, - ACTIONS(1247), 1, - anon_sym_SEMI, - STATE(743), 1, - sym_enable_extension_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27533] = 4, - ACTIONS(1249), 1, - sym_ident_pattern_token, - ACTIONS(1251), 1, - anon_sym_RPAREN, - STATE(698), 1, - sym_interpolate_sampling_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27548] = 4, - ACTIONS(1253), 1, - anon_sym_SEMI, - ACTIONS(1255), 1, - anon_sym_COMMA, - STATE(682), 1, - aux_sym_enable_extension_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27563] = 4, - ACTIONS(219), 1, - anon_sym_RPAREN, - ACTIONS(1257), 1, - anon_sym_COMMA, - STATE(680), 1, - aux_sym_expression_comma_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27578] = 4, - ACTIONS(1259), 1, - anon_sym_SEMI, - ACTIONS(1261), 1, - anon_sym_COMMA, - STATE(685), 1, - aux_sym_software_extension_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27593] = 4, - ACTIONS(552), 1, - sym_ident_pattern_token, - STATE(658), 1, - sym_ident, - STATE(707), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27608] = 4, - ACTIONS(602), 1, - anon_sym_RBRACE, - ACTIONS(1263), 1, - anon_sym_COMMA, - STATE(640), 1, - aux_sym_struct_body_decl_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27623] = 4, - ACTIONS(209), 1, - sym__template_args_end, - ACTIONS(1265), 1, - anon_sym_COMMA, - STATE(681), 1, - aux_sym_template_arg_comma_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27638] = 3, - ACTIONS(1269), 1, - anon_sym_DASH_GT, - ACTIONS(1267), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27651] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1271), 3, - anon_sym_RBRACE, - anon_sym_case, - anon_sym_default, - [27662] = 4, - ACTIONS(608), 1, - anon_sym_RPAREN, - ACTIONS(1273), 1, - anon_sym_COMMA, - STATE(686), 1, - aux_sym_param_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27677] = 4, - ACTIONS(1275), 1, - sym_ident_pattern_token, - STATE(661), 1, - sym_diagnostic_name_token, - STATE(728), 1, - sym_diagnostic_rule_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27692] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(819), 3, - anon_sym_DOT, - anon_sym_RPAREN, - anon_sym_LBRACK, - [27703] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(851), 3, - anon_sym_DOT, - anon_sym_RPAREN, - anon_sym_LBRACK, - [27714] = 4, - ACTIONS(552), 1, - sym_ident_pattern_token, - STATE(658), 1, - sym_ident, - STATE(752), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27729] = 4, - ACTIONS(552), 1, - sym_ident_pattern_token, - STATE(658), 1, - sym_ident, - STATE(693), 1, - sym_optionally_typed_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27744] = 4, - ACTIONS(1277), 1, - anon_sym_COMMA, - ACTIONS(1280), 1, - anon_sym_RPAREN, - STATE(680), 1, - aux_sym_expression_comma_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27759] = 4, - ACTIONS(1282), 1, - anon_sym_COMMA, - ACTIONS(1285), 1, - sym__template_args_end, - STATE(681), 1, - aux_sym_template_arg_comma_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27774] = 4, - ACTIONS(1247), 1, - anon_sym_SEMI, - ACTIONS(1287), 1, - anon_sym_COMMA, - STATE(639), 1, - aux_sym_enable_extension_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27789] = 4, - ACTIONS(1210), 1, - sym_ident_pattern_token, - ACTIONS(1289), 1, - anon_sym_SEMI, - STATE(741), 1, - sym_software_extension_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27804] = 2, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - ACTIONS(1291), 3, - anon_sym_RBRACE, - anon_sym_case, - anon_sym_default, - [27815] = 4, - ACTIONS(1289), 1, - anon_sym_SEMI, - ACTIONS(1293), 1, - anon_sym_COMMA, - STATE(654), 1, - aux_sym_software_extension_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27830] = 4, - ACTIONS(1295), 1, - anon_sym_COMMA, - ACTIONS(1298), 1, - anon_sym_RPAREN, - STATE(686), 1, - aux_sym_param_list_repeat1, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27845] = 2, - ACTIONS(1196), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27855] = 3, - ACTIONS(1300), 1, - anon_sym_SEMI, - ACTIONS(1302), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27867] = 2, - ACTIONS(1298), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27877] = 2, - ACTIONS(1304), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27887] = 2, - ACTIONS(1306), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27897] = 2, - ACTIONS(1285), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27907] = 2, - ACTIONS(1308), 2, - anon_sym_SEMI, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27917] = 2, - ACTIONS(1310), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27927] = 3, - ACTIONS(552), 1, - sym_ident_pattern_token, - STATE(736), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27939] = 2, - ACTIONS(1280), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27949] = 3, - ACTIONS(1312), 1, - anon_sym_COMMA, - ACTIONS(1314), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27961] = 3, - ACTIONS(1316), 1, - anon_sym_COMMA, - ACTIONS(1318), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27973] = 2, - ACTIONS(1320), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27983] = 2, - ACTIONS(1322), 2, - anon_sym_SEMI, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [27993] = 3, - ACTIONS(1275), 1, - sym_ident_pattern_token, - STATE(704), 1, - sym_diagnostic_name_token, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28005] = 3, - ACTIONS(740), 1, - anon_sym_LPAREN, - STATE(328), 1, - sym_argument_expression_list, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28017] = 3, - ACTIONS(1324), 1, - anon_sym_SEMI, - ACTIONS(1326), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28029] = 2, - ACTIONS(1328), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28039] = 2, - ACTIONS(1330), 2, - anon_sym_SEMI, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28049] = 2, - ACTIONS(1332), 2, - anon_sym_SEMI, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28059] = 3, - ACTIONS(1334), 1, - anon_sym_SEMI, - ACTIONS(1336), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28071] = 2, - ACTIONS(1338), 2, - anon_sym_SEMI, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28081] = 3, - ACTIONS(1340), 1, - sym_ident_pattern_token, - STATE(731), 1, - sym_interpolate_type_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28093] = 3, - ACTIONS(1210), 1, - sym_ident_pattern_token, - STATE(741), 1, - sym_software_extension_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28105] = 3, - ACTIONS(1206), 1, - sym_ident_pattern_token, - STATE(743), 1, - sym_enable_extension_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28117] = 2, - ACTIONS(1342), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28127] = 2, - ACTIONS(1344), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28137] = 2, - ACTIONS(1346), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28147] = 3, - ACTIONS(1348), 1, - sym_ident_pattern_token, - STATE(723), 1, - sym_builtin_value_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28159] = 3, - ACTIONS(1350), 1, - anon_sym_COMMA, - ACTIONS(1352), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28171] = 3, - ACTIONS(1354), 1, - anon_sym_SEMI, - ACTIONS(1356), 1, - anon_sym_if, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28183] = 3, - ACTIONS(1358), 1, - anon_sym_LPAREN, - STATE(883), 1, - sym_diagnostic_control, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28195] = 3, - ACTIONS(1360), 1, - anon_sym_COMMA, - ACTIONS(1362), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28207] = 3, - ACTIONS(1364), 1, - anon_sym_COMMA, - ACTIONS(1366), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28219] = 2, - ACTIONS(1368), 2, - anon_sym_SEMI, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28229] = 2, - ACTIONS(1370), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28239] = 3, - ACTIONS(1372), 1, - anon_sym_COMMA, - ACTIONS(1374), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28251] = 3, - ACTIONS(1376), 1, - anon_sym_COMMA, - ACTIONS(1378), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28263] = 3, - ACTIONS(1380), 1, - anon_sym_COMMA, - ACTIONS(1382), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28275] = 2, - ACTIONS(1384), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28285] = 3, - ACTIONS(1386), 1, - anon_sym_COMMA, - ACTIONS(1388), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28297] = 3, - ACTIONS(1390), 1, - anon_sym_COMMA, - ACTIONS(1392), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28309] = 2, - ACTIONS(1394), 2, - anon_sym_AT, - anon_sym_LBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28319] = 2, - ACTIONS(1396), 2, - anon_sym_SEMI, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28329] = 3, - ACTIONS(1398), 1, - anon_sym_COMMA, - ACTIONS(1400), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28341] = 2, - ACTIONS(1402), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28351] = 2, - ACTIONS(1404), 2, - anon_sym_SEMI, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28361] = 2, - ACTIONS(1406), 2, - anon_sym_SEMI, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28371] = 3, - ACTIONS(1408), 1, - anon_sym_SEMI, - ACTIONS(1410), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28383] = 3, - ACTIONS(1412), 1, - anon_sym_LBRACE, - STATE(582), 1, - sym_struct_body_decl, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28395] = 3, - ACTIONS(1414), 1, - anon_sym_COMMA, - ACTIONS(1416), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28407] = 3, - ACTIONS(1358), 1, - anon_sym_LPAREN, - STATE(512), 1, - sym_diagnostic_control, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28419] = 3, - ACTIONS(1418), 1, - sym_ident_pattern_token, - STATE(830), 1, - sym_severity_control_name, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28431] = 3, - ACTIONS(1420), 1, - anon_sym_SEMI, - ACTIONS(1422), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28443] = 2, - ACTIONS(1214), 2, - anon_sym_SEMI, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28453] = 3, - ACTIONS(552), 1, - sym_ident_pattern_token, - STATE(858), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28465] = 2, - ACTIONS(1188), 2, - anon_sym_SEMI, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28475] = 2, - ACTIONS(1131), 2, - sym__template_args_end, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28485] = 3, - ACTIONS(1424), 1, - anon_sym_COMMA, - ACTIONS(1426), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28497] = 3, - ACTIONS(1428), 1, - anon_sym_COMMA, - ACTIONS(1430), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28509] = 3, - ACTIONS(552), 1, - sym_ident_pattern_token, - STATE(867), 1, - sym_ident, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28521] = 2, - ACTIONS(1432), 2, - anon_sym_SEMI, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28531] = 2, - ACTIONS(1434), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28540] = 2, - ACTIONS(1436), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28549] = 2, - ACTIONS(1438), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28558] = 2, - ACTIONS(1440), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28567] = 2, - ACTIONS(1442), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28576] = 2, - ACTIONS(1444), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28585] = 2, - ACTIONS(1446), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28594] = 2, - ACTIONS(1448), 1, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28603] = 2, - ACTIONS(1450), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28612] = 2, - ACTIONS(1452), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28621] = 2, - ACTIONS(1454), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28630] = 2, - ACTIONS(1456), 1, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28639] = 2, - ACTIONS(1458), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28648] = 2, - ACTIONS(1460), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28657] = 2, - ACTIONS(1462), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28666] = 2, - ACTIONS(1464), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28675] = 2, - ACTIONS(1466), 1, - anon_sym_AMP_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28684] = 2, - ACTIONS(1468), 1, - anon_sym_PIPE_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28693] = 2, - ACTIONS(1470), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28702] = 2, - ACTIONS(694), 1, - anon_sym_if, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28711] = 2, - ACTIONS(1472), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28720] = 2, - ACTIONS(1474), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28729] = 2, - ACTIONS(1476), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28738] = 2, - ACTIONS(1478), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28747] = 2, - ACTIONS(1480), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28756] = 2, - ACTIONS(1482), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28765] = 2, - ACTIONS(1484), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28774] = 2, - ACTIONS(1486), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28783] = 2, - ACTIONS(1488), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28792] = 2, - ACTIONS(1490), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28801] = 2, - ACTIONS(1492), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28810] = 2, - ACTIONS(1494), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28819] = 2, - ACTIONS(1496), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28828] = 2, - ACTIONS(1498), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28837] = 2, - ACTIONS(1500), 1, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28846] = 2, - ACTIONS(1502), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28855] = 2, - ACTIONS(1504), 1, - anon_sym_COLON, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28864] = 2, - ACTIONS(71), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28873] = 2, - ACTIONS(1506), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28882] = 2, - ACTIONS(1508), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28891] = 2, - ACTIONS(1510), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28900] = 2, - ACTIONS(1512), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28909] = 2, - ACTIONS(1514), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28918] = 2, - ACTIONS(1516), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28927] = 2, - ACTIONS(1518), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28936] = 2, - ACTIONS(1520), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28945] = 2, - ACTIONS(1522), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28954] = 2, - ACTIONS(1524), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28963] = 2, - ACTIONS(1354), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28972] = 2, - ACTIONS(1526), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28981] = 2, - ACTIONS(1528), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28990] = 2, - ACTIONS(1530), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [28999] = 2, - ACTIONS(1532), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29008] = 2, - ACTIONS(1534), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29017] = 2, - ACTIONS(857), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29026] = 2, - ACTIONS(1536), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29035] = 2, - ACTIONS(1538), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29044] = 2, - ACTIONS(1540), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29053] = 2, - ACTIONS(1542), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29062] = 2, - ACTIONS(1544), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29071] = 2, - ACTIONS(1546), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29080] = 2, - ACTIONS(1548), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29089] = 2, - ACTIONS(1550), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29098] = 2, - ACTIONS(1552), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29107] = 2, - ACTIONS(1554), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29116] = 2, - ACTIONS(1556), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29125] = 2, - ACTIONS(73), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29134] = 2, - ACTIONS(1558), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29143] = 2, - ACTIONS(217), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29152] = 2, - ACTIONS(1560), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29161] = 2, - ACTIONS(1562), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29170] = 2, - ACTIONS(1564), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29179] = 2, - ACTIONS(1566), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29188] = 2, - ACTIONS(1568), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29197] = 2, - ACTIONS(1570), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29206] = 2, - ACTIONS(1572), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29215] = 2, - ACTIONS(1574), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29224] = 2, - ACTIONS(1576), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29233] = 2, - ACTIONS(1578), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29242] = 2, - ACTIONS(1580), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29251] = 2, - ACTIONS(1582), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29260] = 2, - ACTIONS(1584), 1, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29269] = 2, - ACTIONS(1586), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29278] = 2, - ACTIONS(1588), 1, - anon_sym_COMMA, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29287] = 2, - ACTIONS(1590), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29296] = 2, - ACTIONS(1592), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29305] = 2, - ACTIONS(1594), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29314] = 2, - ACTIONS(1596), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29323] = 2, - ACTIONS(1598), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29332] = 2, - ACTIONS(1600), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29341] = 2, - ACTIONS(139), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29350] = 2, - ACTIONS(1602), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29359] = 2, - ACTIONS(1604), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29368] = 2, - ACTIONS(1606), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29377] = 2, - ACTIONS(1608), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29386] = 2, - ACTIONS(41), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29395] = 2, - ACTIONS(1610), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29404] = 2, - ACTIONS(1612), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29413] = 2, - ACTIONS(1614), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29422] = 2, - ACTIONS(1616), 1, - sym__template_args_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29431] = 2, - ACTIONS(1618), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29440] = 2, - ACTIONS(823), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29449] = 2, - ACTIONS(1620), 1, - anon_sym_RBRACK, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29458] = 2, - ACTIONS(1622), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29467] = 2, - ACTIONS(1624), 1, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29476] = 2, - ACTIONS(1626), 1, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29485] = 2, - ACTIONS(1628), 1, - anon_sym_CARET, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29494] = 2, - ACTIONS(1630), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29503] = 2, - ACTIONS(1632), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29512] = 2, - ACTIONS(1634), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29521] = 2, - ACTIONS(1636), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29530] = 2, - ACTIONS(1638), 1, - anon_sym_CARET, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29539] = 2, - ACTIONS(1640), 1, - anon_sym_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29548] = 2, - ACTIONS(1642), 1, - anon_sym_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29557] = 2, - ACTIONS(1644), 1, - anon_sym_PIPE_PIPE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29566] = 2, - ACTIONS(1646), 1, - anon_sym_AMP_AMP, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29575] = 2, - ACTIONS(1648), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29584] = 2, - ACTIONS(1650), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29593] = 2, - ACTIONS(1652), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29602] = 2, - ACTIONS(137), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29611] = 2, - ACTIONS(1410), 1, - anon_sym_EQ, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29620] = 2, - ACTIONS(821), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29629] = 2, - ACTIONS(1654), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29638] = 2, - ACTIONS(1656), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29647] = 2, - ACTIONS(1658), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29656] = 2, - ACTIONS(1660), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29665] = 2, - ACTIONS(1662), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29674] = 2, - ACTIONS(1664), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29683] = 2, - ACTIONS(1666), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29692] = 2, - ACTIONS(1668), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29701] = 2, - ACTIONS(1670), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29710] = 2, - ACTIONS(1672), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29719] = 2, - ACTIONS(1674), 1, - anon_sym_LPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29728] = 2, - ACTIONS(1676), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29737] = 2, - ACTIONS(1678), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29746] = 2, - ACTIONS(1680), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29755] = 2, - ACTIONS(1682), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29764] = 2, - ACTIONS(1684), 1, - anon_sym_SEMI, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29773] = 2, - ACTIONS(1686), 1, - ts_builtin_sym_end, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29782] = 2, - ACTIONS(1688), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29791] = 2, - ACTIONS(1690), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29800] = 2, - ACTIONS(1692), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29809] = 2, - ACTIONS(1694), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29818] = 2, - ACTIONS(1696), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29827] = 2, - ACTIONS(1698), 1, - anon_sym_RBRACE, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29836] = 2, - ACTIONS(1182), 1, - sym__disambiguate_template, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, - [29845] = 2, - ACTIONS(877), 1, - anon_sym_RPAREN, - ACTIONS(3), 3, - sym__block_comment, - sym__comment, - sym__blankspace, -}; - -static const uint32_t ts_small_parse_table_map[] = { - [SMALL_STATE(17)] = 0, - [SMALL_STATE(18)] = 125, - [SMALL_STATE(19)] = 250, - [SMALL_STATE(20)] = 373, - [SMALL_STATE(21)] = 493, - [SMALL_STATE(22)] = 613, - [SMALL_STATE(23)] = 733, - [SMALL_STATE(24)] = 853, - [SMALL_STATE(25)] = 973, - [SMALL_STATE(26)] = 1093, - [SMALL_STATE(27)] = 1213, - [SMALL_STATE(28)] = 1333, - [SMALL_STATE(29)] = 1453, - [SMALL_STATE(30)] = 1573, - [SMALL_STATE(31)] = 1693, - [SMALL_STATE(32)] = 1813, - [SMALL_STATE(33)] = 1933, - [SMALL_STATE(34)] = 2053, - [SMALL_STATE(35)] = 2173, - [SMALL_STATE(36)] = 2293, - [SMALL_STATE(37)] = 2413, - [SMALL_STATE(38)] = 2533, - [SMALL_STATE(39)] = 2653, - [SMALL_STATE(40)] = 2773, - [SMALL_STATE(41)] = 2893, - [SMALL_STATE(42)] = 3013, - [SMALL_STATE(43)] = 3133, - [SMALL_STATE(44)] = 3250, - [SMALL_STATE(45)] = 3367, - [SMALL_STATE(46)] = 3484, - [SMALL_STATE(47)] = 3601, - [SMALL_STATE(48)] = 3718, - [SMALL_STATE(49)] = 3835, - [SMALL_STATE(50)] = 3952, - [SMALL_STATE(51)] = 4069, - [SMALL_STATE(52)] = 4183, - [SMALL_STATE(53)] = 4297, - [SMALL_STATE(54)] = 4411, - [SMALL_STATE(55)] = 4525, - [SMALL_STATE(56)] = 4619, - [SMALL_STATE(57)] = 4733, - [SMALL_STATE(58)] = 4847, - [SMALL_STATE(59)] = 4961, - [SMALL_STATE(60)] = 5075, - [SMALL_STATE(61)] = 5189, - [SMALL_STATE(62)] = 5303, - [SMALL_STATE(63)] = 5417, - [SMALL_STATE(64)] = 5531, - [SMALL_STATE(65)] = 5645, - [SMALL_STATE(66)] = 5759, - [SMALL_STATE(67)] = 5873, - [SMALL_STATE(68)] = 5987, - [SMALL_STATE(69)] = 6101, - [SMALL_STATE(70)] = 6215, - [SMALL_STATE(71)] = 6329, - [SMALL_STATE(72)] = 6443, - [SMALL_STATE(73)] = 6557, - [SMALL_STATE(74)] = 6671, - [SMALL_STATE(75)] = 6785, - [SMALL_STATE(76)] = 6899, - [SMALL_STATE(77)] = 7013, - [SMALL_STATE(78)] = 7127, - [SMALL_STATE(79)] = 7241, - [SMALL_STATE(80)] = 7355, - [SMALL_STATE(81)] = 7469, - [SMALL_STATE(82)] = 7583, - [SMALL_STATE(83)] = 7697, - [SMALL_STATE(84)] = 7811, - [SMALL_STATE(85)] = 7925, - [SMALL_STATE(86)] = 8039, - [SMALL_STATE(87)] = 8153, - [SMALL_STATE(88)] = 8267, - [SMALL_STATE(89)] = 8381, - [SMALL_STATE(90)] = 8495, - [SMALL_STATE(91)] = 8609, - [SMALL_STATE(92)] = 8723, - [SMALL_STATE(93)] = 8837, - [SMALL_STATE(94)] = 8951, - [SMALL_STATE(95)] = 9065, - [SMALL_STATE(96)] = 9179, - [SMALL_STATE(97)] = 9293, - [SMALL_STATE(98)] = 9386, - [SMALL_STATE(99)] = 9479, - [SMALL_STATE(100)] = 9572, - [SMALL_STATE(101)] = 9665, - [SMALL_STATE(102)] = 9741, - [SMALL_STATE(103)] = 9817, - [SMALL_STATE(104)] = 9907, - [SMALL_STATE(105)] = 9997, - [SMALL_STATE(106)] = 10073, - [SMALL_STATE(107)] = 10163, - [SMALL_STATE(108)] = 10253, - [SMALL_STATE(109)] = 10337, - [SMALL_STATE(110)] = 10421, - [SMALL_STATE(111)] = 10505, - [SMALL_STATE(112)] = 10589, - [SMALL_STATE(113)] = 10673, - [SMALL_STATE(114)] = 10757, - [SMALL_STATE(115)] = 10838, - [SMALL_STATE(116)] = 10919, - [SMALL_STATE(117)] = 11000, - [SMALL_STATE(118)] = 11081, - [SMALL_STATE(119)] = 11162, - [SMALL_STATE(120)] = 11243, - [SMALL_STATE(121)] = 11324, - [SMALL_STATE(122)] = 11405, - [SMALL_STATE(123)] = 11486, - [SMALL_STATE(124)] = 11567, - [SMALL_STATE(125)] = 11648, - [SMALL_STATE(126)] = 11729, - [SMALL_STATE(127)] = 11810, - [SMALL_STATE(128)] = 11891, - [SMALL_STATE(129)] = 11972, - [SMALL_STATE(130)] = 12053, - [SMALL_STATE(131)] = 12134, - [SMALL_STATE(132)] = 12215, - [SMALL_STATE(133)] = 12296, - [SMALL_STATE(134)] = 12377, - [SMALL_STATE(135)] = 12458, - [SMALL_STATE(136)] = 12539, - [SMALL_STATE(137)] = 12620, - [SMALL_STATE(138)] = 12701, - [SMALL_STATE(139)] = 12782, - [SMALL_STATE(140)] = 12863, - [SMALL_STATE(141)] = 12944, - [SMALL_STATE(142)] = 13025, - [SMALL_STATE(143)] = 13066, - [SMALL_STATE(144)] = 13107, - [SMALL_STATE(145)] = 13148, - [SMALL_STATE(146)] = 13192, - [SMALL_STATE(147)] = 13238, - [SMALL_STATE(148)] = 13281, - [SMALL_STATE(149)] = 13319, - [SMALL_STATE(150)] = 13363, - [SMALL_STATE(151)] = 13401, - [SMALL_STATE(152)] = 13445, - [SMALL_STATE(153)] = 13489, - [SMALL_STATE(154)] = 13526, - [SMALL_STATE(155)] = 13563, - [SMALL_STATE(156)] = 13600, - [SMALL_STATE(157)] = 13637, - [SMALL_STATE(158)] = 13674, - [SMALL_STATE(159)] = 13711, - [SMALL_STATE(160)] = 13748, - [SMALL_STATE(161)] = 13785, - [SMALL_STATE(162)] = 13822, - [SMALL_STATE(163)] = 13859, - [SMALL_STATE(164)] = 13896, - [SMALL_STATE(165)] = 13933, - [SMALL_STATE(166)] = 13970, - [SMALL_STATE(167)] = 14007, - [SMALL_STATE(168)] = 14050, - [SMALL_STATE(169)] = 14103, - [SMALL_STATE(170)] = 14140, - [SMALL_STATE(171)] = 14183, - [SMALL_STATE(172)] = 14226, - [SMALL_STATE(173)] = 14269, - [SMALL_STATE(174)] = 14306, - [SMALL_STATE(175)] = 14343, - [SMALL_STATE(176)] = 14383, - [SMALL_STATE(177)] = 14430, - [SMALL_STATE(178)] = 14477, - [SMALL_STATE(179)] = 14516, - [SMALL_STATE(180)] = 14559, - [SMALL_STATE(181)] = 14594, - [SMALL_STATE(182)] = 14629, - [SMALL_STATE(183)] = 14664, - [SMALL_STATE(184)] = 14699, - [SMALL_STATE(185)] = 14734, - [SMALL_STATE(186)] = 14773, - [SMALL_STATE(187)] = 14817, - [SMALL_STATE(188)] = 14851, - [SMALL_STATE(189)] = 14889, - [SMALL_STATE(190)] = 14927, - [SMALL_STATE(191)] = 14971, - [SMALL_STATE(192)] = 15005, - [SMALL_STATE(193)] = 15049, - [SMALL_STATE(194)] = 15093, - [SMALL_STATE(195)] = 15126, - [SMALL_STATE(196)] = 15165, - [SMALL_STATE(197)] = 15206, - [SMALL_STATE(198)] = 15239, - [SMALL_STATE(199)] = 15272, - [SMALL_STATE(200)] = 15305, - [SMALL_STATE(201)] = 15342, - [SMALL_STATE(202)] = 15375, - [SMALL_STATE(203)] = 15416, - [SMALL_STATE(204)] = 15449, - [SMALL_STATE(205)] = 15490, - [SMALL_STATE(206)] = 15531, - [SMALL_STATE(207)] = 15572, - [SMALL_STATE(208)] = 15611, - [SMALL_STATE(209)] = 15652, - [SMALL_STATE(210)] = 15685, - [SMALL_STATE(211)] = 15718, - [SMALL_STATE(212)] = 15751, - [SMALL_STATE(213)] = 15784, - [SMALL_STATE(214)] = 15823, - [SMALL_STATE(215)] = 15864, - [SMALL_STATE(216)] = 15903, - [SMALL_STATE(217)] = 15936, - [SMALL_STATE(218)] = 15969, - [SMALL_STATE(219)] = 16002, - [SMALL_STATE(220)] = 16035, - [SMALL_STATE(221)] = 16068, - [SMALL_STATE(222)] = 16101, - [SMALL_STATE(223)] = 16142, - [SMALL_STATE(224)] = 16175, - [SMALL_STATE(225)] = 16214, - [SMALL_STATE(226)] = 16277, - [SMALL_STATE(227)] = 16318, - [SMALL_STATE(228)] = 16351, - [SMALL_STATE(229)] = 16390, - [SMALL_STATE(230)] = 16423, - [SMALL_STATE(231)] = 16456, - [SMALL_STATE(232)] = 16489, - [SMALL_STATE(233)] = 16530, - [SMALL_STATE(234)] = 16563, - [SMALL_STATE(235)] = 16596, - [SMALL_STATE(236)] = 16659, - [SMALL_STATE(237)] = 16691, - [SMALL_STATE(238)] = 16723, - [SMALL_STATE(239)] = 16761, - [SMALL_STATE(240)] = 16799, - [SMALL_STATE(241)] = 16833, - [SMALL_STATE(242)] = 16871, - [SMALL_STATE(243)] = 16903, - [SMALL_STATE(244)] = 16935, - [SMALL_STATE(245)] = 16967, - [SMALL_STATE(246)] = 16999, - [SMALL_STATE(247)] = 17037, - [SMALL_STATE(248)] = 17069, - [SMALL_STATE(249)] = 17107, - [SMALL_STATE(250)] = 17139, - [SMALL_STATE(251)] = 17171, - [SMALL_STATE(252)] = 17203, - [SMALL_STATE(253)] = 17235, - [SMALL_STATE(254)] = 17273, - [SMALL_STATE(255)] = 17311, - [SMALL_STATE(256)] = 17349, - [SMALL_STATE(257)] = 17387, - [SMALL_STATE(258)] = 17419, - [SMALL_STATE(259)] = 17451, - [SMALL_STATE(260)] = 17489, - [SMALL_STATE(261)] = 17521, - [SMALL_STATE(262)] = 17559, - [SMALL_STATE(263)] = 17591, - [SMALL_STATE(264)] = 17623, - [SMALL_STATE(265)] = 17661, - [SMALL_STATE(266)] = 17693, - [SMALL_STATE(267)] = 17725, - [SMALL_STATE(268)] = 17757, - [SMALL_STATE(269)] = 17789, - [SMALL_STATE(270)] = 17821, - [SMALL_STATE(271)] = 17853, - [SMALL_STATE(272)] = 17885, - [SMALL_STATE(273)] = 17917, - [SMALL_STATE(274)] = 17949, - [SMALL_STATE(275)] = 17981, - [SMALL_STATE(276)] = 18019, - [SMALL_STATE(277)] = 18051, - [SMALL_STATE(278)] = 18089, - [SMALL_STATE(279)] = 18121, - [SMALL_STATE(280)] = 18153, - [SMALL_STATE(281)] = 18185, - [SMALL_STATE(282)] = 18223, - [SMALL_STATE(283)] = 18255, - [SMALL_STATE(284)] = 18290, - [SMALL_STATE(285)] = 18325, - [SMALL_STATE(286)] = 18360, - [SMALL_STATE(287)] = 18395, - [SMALL_STATE(288)] = 18430, - [SMALL_STATE(289)] = 18465, - [SMALL_STATE(290)] = 18500, - [SMALL_STATE(291)] = 18535, - [SMALL_STATE(292)] = 18570, - [SMALL_STATE(293)] = 18605, - [SMALL_STATE(294)] = 18636, - [SMALL_STATE(295)] = 18666, - [SMALL_STATE(296)] = 18700, - [SMALL_STATE(297)] = 18730, - [SMALL_STATE(298)] = 18764, - [SMALL_STATE(299)] = 18794, - [SMALL_STATE(300)] = 18824, - [SMALL_STATE(301)] = 18854, - [SMALL_STATE(302)] = 18884, - [SMALL_STATE(303)] = 18918, - [SMALL_STATE(304)] = 18948, - [SMALL_STATE(305)] = 18978, - [SMALL_STATE(306)] = 19008, - [SMALL_STATE(307)] = 19038, - [SMALL_STATE(308)] = 19068, - [SMALL_STATE(309)] = 19098, - [SMALL_STATE(310)] = 19128, - [SMALL_STATE(311)] = 19166, - [SMALL_STATE(312)] = 19196, - [SMALL_STATE(313)] = 19226, - [SMALL_STATE(314)] = 19255, - [SMALL_STATE(315)] = 19290, - [SMALL_STATE(316)] = 19325, - [SMALL_STATE(317)] = 19354, - [SMALL_STATE(318)] = 19389, - [SMALL_STATE(319)] = 19424, - [SMALL_STATE(320)] = 19457, - [SMALL_STATE(321)] = 19492, - [SMALL_STATE(322)] = 19525, - [SMALL_STATE(323)] = 19560, - [SMALL_STATE(324)] = 19588, - [SMALL_STATE(325)] = 19616, - [SMALL_STATE(326)] = 19644, - [SMALL_STATE(327)] = 19672, - [SMALL_STATE(328)] = 19710, - [SMALL_STATE(329)] = 19738, - [SMALL_STATE(330)] = 19766, - [SMALL_STATE(331)] = 19826, - [SMALL_STATE(332)] = 19854, - [SMALL_STATE(333)] = 19882, - [SMALL_STATE(334)] = 19914, - [SMALL_STATE(335)] = 19948, - [SMALL_STATE(336)] = 19978, - [SMALL_STATE(337)] = 20006, - [SMALL_STATE(338)] = 20034, - [SMALL_STATE(339)] = 20062, - [SMALL_STATE(340)] = 20090, - [SMALL_STATE(341)] = 20118, - [SMALL_STATE(342)] = 20150, - [SMALL_STATE(343)] = 20178, - [SMALL_STATE(344)] = 20206, - [SMALL_STATE(345)] = 20234, - [SMALL_STATE(346)] = 20262, - [SMALL_STATE(347)] = 20290, - [SMALL_STATE(348)] = 20318, - [SMALL_STATE(349)] = 20346, - [SMALL_STATE(350)] = 20374, - [SMALL_STATE(351)] = 20402, - [SMALL_STATE(352)] = 20430, - [SMALL_STATE(353)] = 20458, - [SMALL_STATE(354)] = 20486, - [SMALL_STATE(355)] = 20514, - [SMALL_STATE(356)] = 20542, - [SMALL_STATE(357)] = 20576, - [SMALL_STATE(358)] = 20604, - [SMALL_STATE(359)] = 20632, - [SMALL_STATE(360)] = 20660, - [SMALL_STATE(361)] = 20694, - [SMALL_STATE(362)] = 20721, - [SMALL_STATE(363)] = 20748, - [SMALL_STATE(364)] = 20797, - [SMALL_STATE(365)] = 20824, - [SMALL_STATE(366)] = 20851, - [SMALL_STATE(367)] = 20878, - [SMALL_STATE(368)] = 20905, - [SMALL_STATE(369)] = 20954, - [SMALL_STATE(370)] = 20983, - [SMALL_STATE(371)] = 21010, - [SMALL_STATE(372)] = 21037, - [SMALL_STATE(373)] = 21064, - [SMALL_STATE(374)] = 21097, - [SMALL_STATE(375)] = 21124, - [SMALL_STATE(376)] = 21151, - [SMALL_STATE(377)] = 21178, - [SMALL_STATE(378)] = 21205, - [SMALL_STATE(379)] = 21232, - [SMALL_STATE(380)] = 21265, - [SMALL_STATE(381)] = 21292, - [SMALL_STATE(382)] = 21325, - [SMALL_STATE(383)] = 21352, - [SMALL_STATE(384)] = 21401, - [SMALL_STATE(385)] = 21428, - [SMALL_STATE(386)] = 21454, - [SMALL_STATE(387)] = 21480, - [SMALL_STATE(388)] = 21506, - [SMALL_STATE(389)] = 21536, - [SMALL_STATE(390)] = 21566, - [SMALL_STATE(391)] = 21592, - [SMALL_STATE(392)] = 21618, - [SMALL_STATE(393)] = 21648, - [SMALL_STATE(394)] = 21674, - [SMALL_STATE(395)] = 21700, - [SMALL_STATE(396)] = 21726, - [SMALL_STATE(397)] = 21752, - [SMALL_STATE(398)] = 21782, - [SMALL_STATE(399)] = 21808, - [SMALL_STATE(400)] = 21834, - [SMALL_STATE(401)] = 21860, - [SMALL_STATE(402)] = 21886, - [SMALL_STATE(403)] = 21912, - [SMALL_STATE(404)] = 21938, - [SMALL_STATE(405)] = 21964, - [SMALL_STATE(406)] = 21994, - [SMALL_STATE(407)] = 22024, - [SMALL_STATE(408)] = 22050, - [SMALL_STATE(409)] = 22076, - [SMALL_STATE(410)] = 22102, - [SMALL_STATE(411)] = 22128, - [SMALL_STATE(412)] = 22154, - [SMALL_STATE(413)] = 22180, - [SMALL_STATE(414)] = 22208, - [SMALL_STATE(415)] = 22234, - [SMALL_STATE(416)] = 22260, - [SMALL_STATE(417)] = 22286, - [SMALL_STATE(418)] = 22316, - [SMALL_STATE(419)] = 22339, - [SMALL_STATE(420)] = 22364, - [SMALL_STATE(421)] = 22389, - [SMALL_STATE(422)] = 22418, - [SMALL_STATE(423)] = 22443, - [SMALL_STATE(424)] = 22468, - [SMALL_STATE(425)] = 22493, - [SMALL_STATE(426)] = 22522, - [SMALL_STATE(427)] = 22551, - [SMALL_STATE(428)] = 22574, - [SMALL_STATE(429)] = 22601, - [SMALL_STATE(430)] = 22626, - [SMALL_STATE(431)] = 22649, - [SMALL_STATE(432)] = 22674, - [SMALL_STATE(433)] = 22697, - [SMALL_STATE(434)] = 22720, - [SMALL_STATE(435)] = 22745, - [SMALL_STATE(436)] = 22774, - [SMALL_STATE(437)] = 22798, - [SMALL_STATE(438)] = 22828, - [SMALL_STATE(439)] = 22852, - [SMALL_STATE(440)] = 22876, - [SMALL_STATE(441)] = 22906, - [SMALL_STATE(442)] = 22930, - [SMALL_STATE(443)] = 22960, - [SMALL_STATE(444)] = 22984, - [SMALL_STATE(445)] = 23014, - [SMALL_STATE(446)] = 23038, - [SMALL_STATE(447)] = 23062, - [SMALL_STATE(448)] = 23090, - [SMALL_STATE(449)] = 23114, - [SMALL_STATE(450)] = 23142, - [SMALL_STATE(451)] = 23170, - [SMALL_STATE(452)] = 23200, - [SMALL_STATE(453)] = 23230, - [SMALL_STATE(454)] = 23254, - [SMALL_STATE(455)] = 23278, - [SMALL_STATE(456)] = 23302, - [SMALL_STATE(457)] = 23326, - [SMALL_STATE(458)] = 23356, - [SMALL_STATE(459)] = 23379, - [SMALL_STATE(460)] = 23404, - [SMALL_STATE(461)] = 23427, - [SMALL_STATE(462)] = 23450, - [SMALL_STATE(463)] = 23471, - [SMALL_STATE(464)] = 23494, - [SMALL_STATE(465)] = 23517, - [SMALL_STATE(466)] = 23540, - [SMALL_STATE(467)] = 23567, - [SMALL_STATE(468)] = 23590, - [SMALL_STATE(469)] = 23613, - [SMALL_STATE(470)] = 23636, - [SMALL_STATE(471)] = 23659, - [SMALL_STATE(472)] = 23682, - [SMALL_STATE(473)] = 23705, - [SMALL_STATE(474)] = 23728, - [SMALL_STATE(475)] = 23751, - [SMALL_STATE(476)] = 23774, - [SMALL_STATE(477)] = 23797, - [SMALL_STATE(478)] = 23820, - [SMALL_STATE(479)] = 23843, - [SMALL_STATE(480)] = 23870, - [SMALL_STATE(481)] = 23893, - [SMALL_STATE(482)] = 23916, - [SMALL_STATE(483)] = 23939, - [SMALL_STATE(484)] = 23960, - [SMALL_STATE(485)] = 23983, - [SMALL_STATE(486)] = 24006, - [SMALL_STATE(487)] = 24029, - [SMALL_STATE(488)] = 24052, - [SMALL_STATE(489)] = 24075, - [SMALL_STATE(490)] = 24098, - [SMALL_STATE(491)] = 24121, - [SMALL_STATE(492)] = 24144, - [SMALL_STATE(493)] = 24165, - [SMALL_STATE(494)] = 24188, - [SMALL_STATE(495)] = 24211, - [SMALL_STATE(496)] = 24234, - [SMALL_STATE(497)] = 24257, - [SMALL_STATE(498)] = 24280, - [SMALL_STATE(499)] = 24302, - [SMALL_STATE(500)] = 24324, - [SMALL_STATE(501)] = 24352, - [SMALL_STATE(502)] = 24374, - [SMALL_STATE(503)] = 24396, - [SMALL_STATE(504)] = 24420, - [SMALL_STATE(505)] = 24448, - [SMALL_STATE(506)] = 24476, - [SMALL_STATE(507)] = 24497, - [SMALL_STATE(508)] = 24518, - [SMALL_STATE(509)] = 24541, - [SMALL_STATE(510)] = 24564, - [SMALL_STATE(511)] = 24585, - [SMALL_STATE(512)] = 24606, - [SMALL_STATE(513)] = 24627, - [SMALL_STATE(514)] = 24648, - [SMALL_STATE(515)] = 24669, - [SMALL_STATE(516)] = 24690, - [SMALL_STATE(517)] = 24713, - [SMALL_STATE(518)] = 24736, - [SMALL_STATE(519)] = 24759, - [SMALL_STATE(520)] = 24782, - [SMALL_STATE(521)] = 24803, - [SMALL_STATE(522)] = 24824, - [SMALL_STATE(523)] = 24847, - [SMALL_STATE(524)] = 24868, - [SMALL_STATE(525)] = 24889, - [SMALL_STATE(526)] = 24910, - [SMALL_STATE(527)] = 24931, - [SMALL_STATE(528)] = 24952, - [SMALL_STATE(529)] = 24973, - [SMALL_STATE(530)] = 24994, - [SMALL_STATE(531)] = 25015, - [SMALL_STATE(532)] = 25036, - [SMALL_STATE(533)] = 25057, - [SMALL_STATE(534)] = 25078, - [SMALL_STATE(535)] = 25099, - [SMALL_STATE(536)] = 25120, - [SMALL_STATE(537)] = 25141, - [SMALL_STATE(538)] = 25162, - [SMALL_STATE(539)] = 25183, - [SMALL_STATE(540)] = 25204, - [SMALL_STATE(541)] = 25225, - [SMALL_STATE(542)] = 25246, - [SMALL_STATE(543)] = 25267, - [SMALL_STATE(544)] = 25288, - [SMALL_STATE(545)] = 25309, - [SMALL_STATE(546)] = 25330, - [SMALL_STATE(547)] = 25351, - [SMALL_STATE(548)] = 25374, - [SMALL_STATE(549)] = 25395, - [SMALL_STATE(550)] = 25416, - [SMALL_STATE(551)] = 25439, - [SMALL_STATE(552)] = 25462, - [SMALL_STATE(553)] = 25483, - [SMALL_STATE(554)] = 25506, - [SMALL_STATE(555)] = 25527, - [SMALL_STATE(556)] = 25548, - [SMALL_STATE(557)] = 25569, - [SMALL_STATE(558)] = 25590, - [SMALL_STATE(559)] = 25611, - [SMALL_STATE(560)] = 25632, - [SMALL_STATE(561)] = 25655, - [SMALL_STATE(562)] = 25676, - [SMALL_STATE(563)] = 25697, - [SMALL_STATE(564)] = 25718, - [SMALL_STATE(565)] = 25739, - [SMALL_STATE(566)] = 25762, - [SMALL_STATE(567)] = 25783, - [SMALL_STATE(568)] = 25804, - [SMALL_STATE(569)] = 25825, - [SMALL_STATE(570)] = 25846, - [SMALL_STATE(571)] = 25867, - [SMALL_STATE(572)] = 25888, - [SMALL_STATE(573)] = 25909, - [SMALL_STATE(574)] = 25930, - [SMALL_STATE(575)] = 25951, - [SMALL_STATE(576)] = 25972, - [SMALL_STATE(577)] = 25993, - [SMALL_STATE(578)] = 26014, - [SMALL_STATE(579)] = 26035, - [SMALL_STATE(580)] = 26055, - [SMALL_STATE(581)] = 26073, - [SMALL_STATE(582)] = 26097, - [SMALL_STATE(583)] = 26117, - [SMALL_STATE(584)] = 26137, - [SMALL_STATE(585)] = 26157, - [SMALL_STATE(586)] = 26177, - [SMALL_STATE(587)] = 26197, - [SMALL_STATE(588)] = 26219, - [SMALL_STATE(589)] = 26239, - [SMALL_STATE(590)] = 26263, - [SMALL_STATE(591)] = 26283, - [SMALL_STATE(592)] = 26302, - [SMALL_STATE(593)] = 26321, - [SMALL_STATE(594)] = 26344, - [SMALL_STATE(595)] = 26363, - [SMALL_STATE(596)] = 26382, - [SMALL_STATE(597)] = 26401, - [SMALL_STATE(598)] = 26418, - [SMALL_STATE(599)] = 26437, - [SMALL_STATE(600)] = 26458, - [SMALL_STATE(601)] = 26481, - [SMALL_STATE(602)] = 26500, - [SMALL_STATE(603)] = 26519, - [SMALL_STATE(604)] = 26536, - [SMALL_STATE(605)] = 26554, - [SMALL_STATE(606)] = 26572, - [SMALL_STATE(607)] = 26590, - [SMALL_STATE(608)] = 26608, - [SMALL_STATE(609)] = 26626, - [SMALL_STATE(610)] = 26651, - [SMALL_STATE(611)] = 26676, - [SMALL_STATE(612)] = 26701, - [SMALL_STATE(613)] = 26720, - [SMALL_STATE(614)] = 26743, - [SMALL_STATE(615)] = 26766, - [SMALL_STATE(616)] = 26781, - [SMALL_STATE(617)] = 26806, - [SMALL_STATE(618)] = 26829, - [SMALL_STATE(619)] = 26847, - [SMALL_STATE(620)] = 26867, - [SMALL_STATE(621)] = 26887, - [SMALL_STATE(622)] = 26904, - [SMALL_STATE(623)] = 26925, - [SMALL_STATE(624)] = 26942, - [SMALL_STATE(625)] = 26959, - [SMALL_STATE(626)] = 26972, - [SMALL_STATE(627)] = 26985, - [SMALL_STATE(628)] = 26997, - [SMALL_STATE(629)] = 27013, - [SMALL_STATE(630)] = 27031, - [SMALL_STATE(631)] = 27049, - [SMALL_STATE(632)] = 27067, - [SMALL_STATE(633)] = 27079, - [SMALL_STATE(634)] = 27091, - [SMALL_STATE(635)] = 27109, - [SMALL_STATE(636)] = 27121, - [SMALL_STATE(637)] = 27139, - [SMALL_STATE(638)] = 27157, - [SMALL_STATE(639)] = 27175, - [SMALL_STATE(640)] = 27190, - [SMALL_STATE(641)] = 27205, - [SMALL_STATE(642)] = 27220, - [SMALL_STATE(643)] = 27233, - [SMALL_STATE(644)] = 27246, - [SMALL_STATE(645)] = 27259, - [SMALL_STATE(646)] = 27272, - [SMALL_STATE(647)] = 27285, - [SMALL_STATE(648)] = 27298, - [SMALL_STATE(649)] = 27313, - [SMALL_STATE(650)] = 27328, - [SMALL_STATE(651)] = 27343, - [SMALL_STATE(652)] = 27358, - [SMALL_STATE(653)] = 27373, - [SMALL_STATE(654)] = 27388, - [SMALL_STATE(655)] = 27403, - [SMALL_STATE(656)] = 27418, - [SMALL_STATE(657)] = 27429, - [SMALL_STATE(658)] = 27444, - [SMALL_STATE(659)] = 27457, - [SMALL_STATE(660)] = 27472, - [SMALL_STATE(661)] = 27483, - [SMALL_STATE(662)] = 27496, - [SMALL_STATE(663)] = 27507, - [SMALL_STATE(664)] = 27518, - [SMALL_STATE(665)] = 27533, - [SMALL_STATE(666)] = 27548, - [SMALL_STATE(667)] = 27563, - [SMALL_STATE(668)] = 27578, - [SMALL_STATE(669)] = 27593, - [SMALL_STATE(670)] = 27608, - [SMALL_STATE(671)] = 27623, - [SMALL_STATE(672)] = 27638, - [SMALL_STATE(673)] = 27651, - [SMALL_STATE(674)] = 27662, - [SMALL_STATE(675)] = 27677, - [SMALL_STATE(676)] = 27692, - [SMALL_STATE(677)] = 27703, - [SMALL_STATE(678)] = 27714, - [SMALL_STATE(679)] = 27729, - [SMALL_STATE(680)] = 27744, - [SMALL_STATE(681)] = 27759, - [SMALL_STATE(682)] = 27774, - [SMALL_STATE(683)] = 27789, - [SMALL_STATE(684)] = 27804, - [SMALL_STATE(685)] = 27815, - [SMALL_STATE(686)] = 27830, - [SMALL_STATE(687)] = 27845, - [SMALL_STATE(688)] = 27855, - [SMALL_STATE(689)] = 27867, - [SMALL_STATE(690)] = 27877, - [SMALL_STATE(691)] = 27887, - [SMALL_STATE(692)] = 27897, - [SMALL_STATE(693)] = 27907, - [SMALL_STATE(694)] = 27917, - [SMALL_STATE(695)] = 27927, - [SMALL_STATE(696)] = 27939, - [SMALL_STATE(697)] = 27949, - [SMALL_STATE(698)] = 27961, - [SMALL_STATE(699)] = 27973, - [SMALL_STATE(700)] = 27983, - [SMALL_STATE(701)] = 27993, - [SMALL_STATE(702)] = 28005, - [SMALL_STATE(703)] = 28017, - [SMALL_STATE(704)] = 28029, - [SMALL_STATE(705)] = 28039, - [SMALL_STATE(706)] = 28049, - [SMALL_STATE(707)] = 28059, - [SMALL_STATE(708)] = 28071, - [SMALL_STATE(709)] = 28081, - [SMALL_STATE(710)] = 28093, - [SMALL_STATE(711)] = 28105, - [SMALL_STATE(712)] = 28117, - [SMALL_STATE(713)] = 28127, - [SMALL_STATE(714)] = 28137, - [SMALL_STATE(715)] = 28147, - [SMALL_STATE(716)] = 28159, - [SMALL_STATE(717)] = 28171, - [SMALL_STATE(718)] = 28183, - [SMALL_STATE(719)] = 28195, - [SMALL_STATE(720)] = 28207, - [SMALL_STATE(721)] = 28219, - [SMALL_STATE(722)] = 28229, - [SMALL_STATE(723)] = 28239, - [SMALL_STATE(724)] = 28251, - [SMALL_STATE(725)] = 28263, - [SMALL_STATE(726)] = 28275, - [SMALL_STATE(727)] = 28285, - [SMALL_STATE(728)] = 28297, - [SMALL_STATE(729)] = 28309, - [SMALL_STATE(730)] = 28319, - [SMALL_STATE(731)] = 28329, - [SMALL_STATE(732)] = 28341, - [SMALL_STATE(733)] = 28351, - [SMALL_STATE(734)] = 28361, - [SMALL_STATE(735)] = 28371, - [SMALL_STATE(736)] = 28383, - [SMALL_STATE(737)] = 28395, - [SMALL_STATE(738)] = 28407, - [SMALL_STATE(739)] = 28419, - [SMALL_STATE(740)] = 28431, - [SMALL_STATE(741)] = 28443, - [SMALL_STATE(742)] = 28453, - [SMALL_STATE(743)] = 28465, - [SMALL_STATE(744)] = 28475, - [SMALL_STATE(745)] = 28485, - [SMALL_STATE(746)] = 28497, - [SMALL_STATE(747)] = 28509, - [SMALL_STATE(748)] = 28521, - [SMALL_STATE(749)] = 28531, - [SMALL_STATE(750)] = 28540, - [SMALL_STATE(751)] = 28549, - [SMALL_STATE(752)] = 28558, - [SMALL_STATE(753)] = 28567, - [SMALL_STATE(754)] = 28576, - [SMALL_STATE(755)] = 28585, - [SMALL_STATE(756)] = 28594, - [SMALL_STATE(757)] = 28603, - [SMALL_STATE(758)] = 28612, - [SMALL_STATE(759)] = 28621, - [SMALL_STATE(760)] = 28630, - [SMALL_STATE(761)] = 28639, - [SMALL_STATE(762)] = 28648, - [SMALL_STATE(763)] = 28657, - [SMALL_STATE(764)] = 28666, - [SMALL_STATE(765)] = 28675, - [SMALL_STATE(766)] = 28684, - [SMALL_STATE(767)] = 28693, - [SMALL_STATE(768)] = 28702, - [SMALL_STATE(769)] = 28711, - [SMALL_STATE(770)] = 28720, - [SMALL_STATE(771)] = 28729, - [SMALL_STATE(772)] = 28738, - [SMALL_STATE(773)] = 28747, - [SMALL_STATE(774)] = 28756, - [SMALL_STATE(775)] = 28765, - [SMALL_STATE(776)] = 28774, - [SMALL_STATE(777)] = 28783, - [SMALL_STATE(778)] = 28792, - [SMALL_STATE(779)] = 28801, - [SMALL_STATE(780)] = 28810, - [SMALL_STATE(781)] = 28819, - [SMALL_STATE(782)] = 28828, - [SMALL_STATE(783)] = 28837, - [SMALL_STATE(784)] = 28846, - [SMALL_STATE(785)] = 28855, - [SMALL_STATE(786)] = 28864, - [SMALL_STATE(787)] = 28873, - [SMALL_STATE(788)] = 28882, - [SMALL_STATE(789)] = 28891, - [SMALL_STATE(790)] = 28900, - [SMALL_STATE(791)] = 28909, - [SMALL_STATE(792)] = 28918, - [SMALL_STATE(793)] = 28927, - [SMALL_STATE(794)] = 28936, - [SMALL_STATE(795)] = 28945, - [SMALL_STATE(796)] = 28954, - [SMALL_STATE(797)] = 28963, - [SMALL_STATE(798)] = 28972, - [SMALL_STATE(799)] = 28981, - [SMALL_STATE(800)] = 28990, - [SMALL_STATE(801)] = 28999, - [SMALL_STATE(802)] = 29008, - [SMALL_STATE(803)] = 29017, - [SMALL_STATE(804)] = 29026, - [SMALL_STATE(805)] = 29035, - [SMALL_STATE(806)] = 29044, - [SMALL_STATE(807)] = 29053, - [SMALL_STATE(808)] = 29062, - [SMALL_STATE(809)] = 29071, - [SMALL_STATE(810)] = 29080, - [SMALL_STATE(811)] = 29089, - [SMALL_STATE(812)] = 29098, - [SMALL_STATE(813)] = 29107, - [SMALL_STATE(814)] = 29116, - [SMALL_STATE(815)] = 29125, - [SMALL_STATE(816)] = 29134, - [SMALL_STATE(817)] = 29143, - [SMALL_STATE(818)] = 29152, - [SMALL_STATE(819)] = 29161, - [SMALL_STATE(820)] = 29170, - [SMALL_STATE(821)] = 29179, - [SMALL_STATE(822)] = 29188, - [SMALL_STATE(823)] = 29197, - [SMALL_STATE(824)] = 29206, - [SMALL_STATE(825)] = 29215, - [SMALL_STATE(826)] = 29224, - [SMALL_STATE(827)] = 29233, - [SMALL_STATE(828)] = 29242, - [SMALL_STATE(829)] = 29251, - [SMALL_STATE(830)] = 29260, - [SMALL_STATE(831)] = 29269, - [SMALL_STATE(832)] = 29278, - [SMALL_STATE(833)] = 29287, - [SMALL_STATE(834)] = 29296, - [SMALL_STATE(835)] = 29305, - [SMALL_STATE(836)] = 29314, - [SMALL_STATE(837)] = 29323, - [SMALL_STATE(838)] = 29332, - [SMALL_STATE(839)] = 29341, - [SMALL_STATE(840)] = 29350, - [SMALL_STATE(841)] = 29359, - [SMALL_STATE(842)] = 29368, - [SMALL_STATE(843)] = 29377, - [SMALL_STATE(844)] = 29386, - [SMALL_STATE(845)] = 29395, - [SMALL_STATE(846)] = 29404, - [SMALL_STATE(847)] = 29413, - [SMALL_STATE(848)] = 29422, - [SMALL_STATE(849)] = 29431, - [SMALL_STATE(850)] = 29440, - [SMALL_STATE(851)] = 29449, - [SMALL_STATE(852)] = 29458, - [SMALL_STATE(853)] = 29467, - [SMALL_STATE(854)] = 29476, - [SMALL_STATE(855)] = 29485, - [SMALL_STATE(856)] = 29494, - [SMALL_STATE(857)] = 29503, - [SMALL_STATE(858)] = 29512, - [SMALL_STATE(859)] = 29521, - [SMALL_STATE(860)] = 29530, - [SMALL_STATE(861)] = 29539, - [SMALL_STATE(862)] = 29548, - [SMALL_STATE(863)] = 29557, - [SMALL_STATE(864)] = 29566, - [SMALL_STATE(865)] = 29575, - [SMALL_STATE(866)] = 29584, - [SMALL_STATE(867)] = 29593, - [SMALL_STATE(868)] = 29602, - [SMALL_STATE(869)] = 29611, - [SMALL_STATE(870)] = 29620, - [SMALL_STATE(871)] = 29629, - [SMALL_STATE(872)] = 29638, - [SMALL_STATE(873)] = 29647, - [SMALL_STATE(874)] = 29656, - [SMALL_STATE(875)] = 29665, - [SMALL_STATE(876)] = 29674, - [SMALL_STATE(877)] = 29683, - [SMALL_STATE(878)] = 29692, - [SMALL_STATE(879)] = 29701, - [SMALL_STATE(880)] = 29710, - [SMALL_STATE(881)] = 29719, - [SMALL_STATE(882)] = 29728, - [SMALL_STATE(883)] = 29737, - [SMALL_STATE(884)] = 29746, - [SMALL_STATE(885)] = 29755, - [SMALL_STATE(886)] = 29764, - [SMALL_STATE(887)] = 29773, - [SMALL_STATE(888)] = 29782, - [SMALL_STATE(889)] = 29791, - [SMALL_STATE(890)] = 29800, - [SMALL_STATE(891)] = 29809, - [SMALL_STATE(892)] = 29818, - [SMALL_STATE(893)] = 29827, - [SMALL_STATE(894)] = 29836, - [SMALL_STATE(895)] = 29845, -}; - -static const TSParseActionEntry ts_parse_actions[] = { - [0] = {.entry = {.count = 0, .reusable = false}}, - [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), - [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), - [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 0, 0, 0), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(641), - [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(747), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(742), - [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(652), - [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(763), - [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), - [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(609), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(678), - [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), - [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(892), - [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610), - [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(803), - [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(88), - [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), - [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(288), - [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(798), - [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(86), - [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(797), - [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(796), - [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(281), - [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50), - [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), - [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), - [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [75] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(763), - [78] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(216), - [81] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(330), - [84] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(609), - [87] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(678), - [90] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(13), - [93] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), - [95] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(892), - [98] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(610), - [101] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(803), - [104] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(88), - [107] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(87), - [110] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(288), - [113] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(798), - [116] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(86), - [119] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(797), - [122] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(796), - [125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), - [127] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(50), - [130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_compound_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(63), - [133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(837), - [135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(717), - [137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), - [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866), - [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), - [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), - [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), - [147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(155), - [149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), - [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(166), - [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(173), - [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(164), - [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 3, 0, 0), - [163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(633), - [169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 2, 0, 0), - [171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(250), - [173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(247), - [175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(265), - [177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(242), - [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(243), - [185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), - [193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), - [195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494), - [197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), - [199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), - [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_comma_list, 3, 0, 0), - [203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), - [205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570), - [207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), - [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_comma_list, 2, 0, 0), - [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575), - [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), - [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), - [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 2, 0, 0), - [221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568), - [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 3, 0, 0), - [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0), - [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 1, 0, 0), - [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), - [233] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(101), - [236] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(330), - [239] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(641), - [242] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(695), - [245] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(747), - [248] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(892), - [251] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(650), - [254] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(63), - [257] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), SHIFT_REPEAT(742), - [260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 2, 0, 0), - [262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [264] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), - [266] = {.entry = {.count = 1, .reusable = false}}, SHIFT(345), - [268] = {.entry = {.count = 1, .reusable = false}}, SHIFT(346), - [270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), - [272] = {.entry = {.count = 1, .reusable = false}}, SHIFT(347), - [274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), - [276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(348), - [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [282] = {.entry = {.count = 1, .reusable = false}}, SHIFT(469), - [284] = {.entry = {.count = 1, .reusable = false}}, SHIFT(477), - [286] = {.entry = {.count = 1, .reusable = false}}, SHIFT(461), - [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), - [290] = {.entry = {.count = 1, .reusable = false}}, SHIFT(485), - [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(484), - [294] = {.entry = {.count = 1, .reusable = false}}, SHIFT(484), - [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(326), - [302] = {.entry = {.count = 1, .reusable = false}}, SHIFT(354), - [304] = {.entry = {.count = 1, .reusable = false}}, SHIFT(339), - [306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), - [308] = {.entry = {.count = 1, .reusable = false}}, SHIFT(324), - [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), - [312] = {.entry = {.count = 1, .reusable = false}}, SHIFT(353), - [314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [318] = {.entry = {.count = 1, .reusable = false}}, SHIFT(541), - [320] = {.entry = {.count = 1, .reusable = false}}, SHIFT(542), - [322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(548), - [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), - [326] = {.entry = {.count = 1, .reusable = false}}, SHIFT(549), - [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), - [330] = {.entry = {.count = 1, .reusable = false}}, SHIFT(511), - [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [336] = {.entry = {.count = 1, .reusable = false}}, SHIFT(400), - [338] = {.entry = {.count = 1, .reusable = false}}, SHIFT(386), - [340] = {.entry = {.count = 1, .reusable = false}}, SHIFT(399), - [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), - [344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(398), - [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), - [348] = {.entry = {.count = 1, .reusable = false}}, SHIFT(395), - [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [354] = {.entry = {.count = 1, .reusable = false}}, SHIFT(489), - [356] = {.entry = {.count = 1, .reusable = false}}, SHIFT(480), - [358] = {.entry = {.count = 1, .reusable = false}}, SHIFT(470), - [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), - [362] = {.entry = {.count = 1, .reusable = false}}, SHIFT(468), - [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), - [366] = {.entry = {.count = 1, .reusable = false}}, SHIFT(482), - [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [372] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370), - [374] = {.entry = {.count = 1, .reusable = false}}, SHIFT(378), - [376] = {.entry = {.count = 1, .reusable = false}}, SHIFT(384), - [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), - [380] = {.entry = {.count = 1, .reusable = false}}, SHIFT(382), - [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), - [384] = {.entry = {.count = 1, .reusable = false}}, SHIFT(380), - [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [390] = {.entry = {.count = 1, .reusable = false}}, SHIFT(258), - [392] = {.entry = {.count = 1, .reusable = false}}, SHIFT(282), - [394] = {.entry = {.count = 1, .reusable = false}}, SHIFT(280), - [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), - [398] = {.entry = {.count = 1, .reusable = false}}, SHIFT(279), - [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), - [402] = {.entry = {.count = 1, .reusable = false}}, SHIFT(278), - [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 4, 0, 0), - [410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 4, 0, 0), - [412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 3, 0, 0), - [414] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 3, 0, 0), - [416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 2, 0, 0), - [418] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 2, 0, 0), - [420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_elaborated_ident, 2, 0, 0), - [422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_elaborated_ident, 2, 0, 0), - [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [426] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_struct_member_repeat1, 2, 0, 0), - [428] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_member_repeat1, 2, 0, 0), SHIFT_REPEAT(330), - [431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_member_repeat1, 2, 0, 0), - [433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), - [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), - [439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_list, 3, 0, 0), - [441] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_list, 3, 0, 0), - [443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singular_expression, 1, 0, 0), - [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), - [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [449] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_singular_expression, 1, 0, 0), - [451] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_elaborated_ident, 3, 0, 0), - [453] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_elaborated_ident, 3, 0, 0), - [455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 3, 0, 0), - [457] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 3, 0, 0), - [459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 2, 0, 0), - [461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 2, 0, 0), - [463] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_expression_list, 2, 0, 0), - [465] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_expression_list, 2, 0, 0), - [467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 1, 0, 0), - [469] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 1, 0, 0), - [471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bool_literal, 1, 0, 0), - [473] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bool_literal, 1, 0, 0), - [475] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_ident, 1, 0, 0), - [477] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_ident, 1, 0, 0), - [479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_swizzle_name, 1, 0, 0), - [481] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_swizzle_name, 1, 0, 0), - [483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_phrase, 2, 0, 0), - [485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_phrase, 2, 0, 0), - [487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_expression_list, 3, 0, 0), - [489] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_expression_list, 3, 0, 0), - [491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_float_literal, 1, 0, 0), - [493] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_float_literal, 1, 0, 0), - [495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1, 0, 0), - [497] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_literal, 1, 0, 0), - [499] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hex_float_literal, 1, 0, 0), - [501] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hex_float_literal, 1, 0, 0), - [503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_paren_expression, 3, 0, 0), - [505] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_paren_expression, 3, 0, 0), - [507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_int_literal, 1, 0, 0), - [509] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_int_literal, 1, 0, 0), - [511] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 1, 0, 0), - [513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 1, 0, 0), - [515] = {.entry = {.count = 1, .reusable = false}}, SHIFT(232), - [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), - [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(822), - [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [529] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 3, 0, 0), - [531] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 3, 0, 0), - [533] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 2, 0, 0), - [535] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 2, 0, 0), - [537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal_float_literal, 1, 0, 0), - [539] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decimal_float_literal, 1, 0, 0), - [541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal_int_literal, 1, 0, 0), - [543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decimal_int_literal, 1, 0, 0), - [545] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0), - [547] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0), - [549] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(768), - [552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871), - [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), - [556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), - [558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_expression, 1, 0, 0), - [562] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_and_expression, 1, 0, 0), - [564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_expression, 1, 0, 0), - [566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_or_expression, 1, 0, 0), - [568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_xor_expression, 1, 0, 0), - [570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 1, 0, 0), - [574] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 1, 0, 0), - [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_singular_expression, 2, 0, 0), - [578] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_singular_expression, 2, 0, 0), - [580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 0), - [582] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 0), - [584] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_or_swizzle_specifier, 4, 0, 0), - [586] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_or_swizzle_specifier, 4, 0, 0), - [588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), - [592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(588), - [594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_if_clause, 4, 0, 0), - [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_if_clause, 4, 0, 0), - [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), - [604] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_clause, 3, 0, 0), - [606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 3, 0, 0), - [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 2, 0, 0), - [610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 3, 0, 0), - [612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), - [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(763), - [618] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_statement, 4, 0, 0), - [620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_statement, 4, 0, 0), - [622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 0), - [624] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 0), - [626] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 4, 0, 0), - [628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 4, 0, 0), - [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [632] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 0), - [634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 0), - [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_statement, 3, 0, 0), - [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_statement, 3, 0, 0), - [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), - [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519), - [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), - [648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 3, 0, 0), - [650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 3, 0, 0), - [652] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 3, 0, 0), - [654] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 3, 0, 0), - [656] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_body, 3, 0, 0), - [658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_body, 3, 0, 0), - [660] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1, 0, 0), - [662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1, 0, 0), - [664] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 5, 0, 0), - [666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 5, 0, 0), - [668] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 2, 0, 0), - [670] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 2, 0, 0), - [672] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 5, 0, 0), - [674] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 5, 0, 0), - [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [678] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_body, 4, 0, 0), - [680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_body, 4, 0, 0), - [682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 6, 0, 0), - [684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 6, 0, 0), - [686] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 0), - [688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 0), - [690] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_loop_statement, 7, 0, 0), - [692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_loop_statement, 7, 0, 0), - [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [696] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 2, 0, 0), - [698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2, 0, 0), - [700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619), - [702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_expression, 3, 0, 0), - [706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), - [708] = {.entry = {.count = 1, .reusable = false}}, SHIFT(296), - [710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(620), - [712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [716] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_expression, 1, 0, 0), - [718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [726] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_operator, 1, 0, 0), - [728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_operator, 1, 0, 0), - [730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [732] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_additive_operator, 1, 0, 0), - [734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_additive_operator, 1, 0, 0), - [736] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_assignment_operator, 1, 0, 0), - [738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_assignment_operator, 1, 0, 0), - [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_multiplicative_expression, 3, 0, 0), - [744] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_multiplicative_expression, 3, 0, 0), - [746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), - [750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), - [754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), - [762] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), SHIFT_REPEAT(718), - [765] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), - [767] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), SHIFT_REPEAT(652), - [770] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2, 0, 0), SHIFT_REPEAT(653), - [773] = {.entry = {.count = 1, .reusable = false}}, SHIFT(479), - [775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(738), - [777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(881), - [779] = {.entry = {.count = 1, .reusable = false}}, SHIFT(880), - [781] = {.entry = {.count = 1, .reusable = false}}, SHIFT(879), - [783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(878), - [785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(573), - [787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(877), - [789] = {.entry = {.count = 1, .reusable = false}}, SHIFT(876), - [791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(875), - [793] = {.entry = {.count = 1, .reusable = false}}, SHIFT(578), - [795] = {.entry = {.count = 1, .reusable = false}}, SHIFT(874), - [797] = {.entry = {.count = 1, .reusable = false}}, SHIFT(567), - [799] = {.entry = {.count = 1, .reusable = false}}, SHIFT(873), - [801] = {.entry = {.count = 1, .reusable = false}}, SHIFT(872), - [803] = {.entry = {.count = 1, .reusable = false}}, SHIFT(566), - [805] = {.entry = {.count = 1, .reusable = false}}, SHIFT(507), - [807] = {.entry = {.count = 1, .reusable = false}}, SHIFT(515), - [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), - [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [815] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shift_expression, 1, 0, 0), - [817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), - [819] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_core_lhs_expression, 2, 0, 0), - [821] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 4, 0, 0), - [823] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 3, 0, 0), - [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), - [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [829] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 2, 0, 0), - [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(560), - [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lhs_expression, 1, 0, 0), - [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [843] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relational_expression, 1, 0, 0), - [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [851] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_core_lhs_expression, 3, 0, 0), - [853] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shift_expression, 3, 0, 0), - [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(734), - [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(733), - [865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(522), - [869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), - [873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), - [875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [877] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lhs_expression, 2, 0, 0), - [879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_directive, 1, 0, 0), - [881] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_global_directive, 1, 0, 0), - [883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [885] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_requires_directive, 3, 0, 0), - [887] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_requires_directive, 3, 0, 0), - [889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_directive, 3, 0, 0), - [891] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_directive, 3, 0, 0), - [893] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 2, 0, 0), - [895] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 2, 0, 0), - [897] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_directive, 3, 0, 0), - [899] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enable_directive, 3, 0, 0), - [901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553), - [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [905] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_control, 6, 0, 0), - [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_control, 6, 0, 0), - [909] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_control, 5, 0, 0), - [911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_control, 5, 0, 0), - [913] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_fragment_attr, 2, 0, 0), - [915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_fragment_attr, 2, 0, 0), - [917] = {.entry = {.count = 1, .reusable = false}}, SHIFT(357), - [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [921] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158), - [923] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, 0, 0), - [925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 0), - [927] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_diagnostic_attr, 3, 0, 0), - [929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_attr, 3, 0, 0), - [931] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 7, 0, 0), - [933] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 7, 0, 0), - [935] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 7, 0, 0), - [937] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 7, 0, 0), - [939] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compute_attr, 2, 0, 0), - [941] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compute_attr, 2, 0, 0), - [943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), - [945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(365), - [947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), - [949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337), - [951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), - [953] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487), - [955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), - [957] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271), - [959] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 5, 0, 0), - [961] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 5, 0, 0), - [963] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_size_attr, 5, 0, 0), - [965] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_size_attr, 5, 0, 0), - [967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), - [969] = {.entry = {.count = 1, .reusable = false}}, SHIFT(472), - [971] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_location_attr, 5, 0, 0), - [973] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location_attr, 5, 0, 0), - [975] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 5, 0, 0), - [977] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 5, 0, 0), - [979] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_id_attr, 5, 0, 0), - [981] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_id_attr, 5, 0, 0), - [983] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_align_attr, 6, 0, 0), - [985] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_align_attr, 6, 0, 0), - [987] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_group_attr, 5, 0, 0), - [989] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_group_attr, 5, 0, 0), - [991] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binding_attr, 6, 0, 0), - [993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding_attr, 6, 0, 0), - [995] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_attr, 5, 0, 0), - [997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_attr, 5, 0, 0), - [999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_blend_src_attr, 6, 0, 0), - [1001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_blend_src_attr, 6, 0, 0), - [1003] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_attr, 6, 0, 0), - [1005] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_attr, 6, 0, 0), - [1007] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_group_attr, 6, 0, 0), - [1009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_group_attr, 6, 0, 0), - [1011] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_blend_src_attr, 5, 0, 0), - [1013] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_blend_src_attr, 5, 0, 0), - [1015] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binding_attr, 5, 0, 0), - [1017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binding_attr, 5, 0, 0), - [1019] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_align_attr, 5, 0, 0), - [1021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_align_attr, 5, 0, 0), - [1023] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_id_attr, 6, 0, 0), - [1025] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_id_attr, 6, 0, 0), - [1027] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 6, 0, 0), - [1029] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 6, 0, 0), - [1031] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 10, 0, 0), - [1033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 10, 0, 0), - [1035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_location_attr, 6, 0, 0), - [1037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_location_attr, 6, 0, 0), - [1039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [1041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), - [1043] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), - [1045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), - [1047] = {.entry = {.count = 1, .reusable = false}}, SHIFT(414), - [1049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(572), - [1051] = {.entry = {.count = 1, .reusable = false}}, SHIFT(569), - [1053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 1, 0, 0), - [1055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1, 0, 0), - [1057] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 9, 0, 0), - [1059] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 9, 0, 0), - [1061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), - [1063] = {.entry = {.count = 1, .reusable = false}}, SHIFT(427), - [1065] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_size_attr, 6, 0, 0), - [1067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_size_attr, 6, 0, 0), - [1069] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vertex_attr, 2, 0, 0), - [1071] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vertex_attr, 2, 0, 0), - [1073] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_must_use_attr, 2, 0, 0), - [1075] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_must_use_attr, 2, 0, 0), - [1077] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 6, 0, 0), - [1079] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 6, 0, 0), - [1081] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_attr, 2, 0, 0), - [1083] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_attr, 2, 0, 0), - [1085] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_workgroup_size_attr, 8, 0, 0), - [1087] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_workgroup_size_attr, 8, 0, 0), - [1089] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolate_attr, 8, 0, 0), - [1091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_attr, 8, 0, 0), - [1093] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_invariant_attr, 2, 0, 0), - [1095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_invariant_attr, 2, 0, 0), - [1097] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_decl, 3, 0, 0), - [1099] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_decl, 3, 0, 0), - [1101] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_decl, 3, 0, 0), - [1103] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_decl, 3, 0, 0), - [1105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat2, 2, 0, 0), - [1107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 4, 0, 0), - [1109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 4, 0, 0), - [1111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_decl, 2, 0, 0), - [1113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_decl, 2, 0, 0), - [1115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [1117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [1119] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 5, 0, 0), - [1121] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 5, 0, 0), - [1123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_body_decl, 3, 0, 0), - [1125] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_body_decl, 3, 0, 0), - [1127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [1129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relational_expression, 3, 0, 0), - [1131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), - [1133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_and_expression, 1, 0, 0), - [1135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_or_expression, 1, 0, 0), - [1137] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3, 0, 0), - [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_and_expression, 3, 0, 0), - [1141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_short_circuit_or_expression, 3, 0, 0), - [1143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bitwise_expression, 3, 0, 0), - [1145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_or_expression, 3, 0, 0), - [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_and_expression, 3, 0, 0), - [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_xor_expression, 3, 0, 0), - [1151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), - [1153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616), - [1155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), - [1157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [1159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), - [1161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), - [1163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_switch_body_repeat1, 2, 0, 0), - [1165] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_switch_body_repeat1, 2, 0, 0), SHIFT_REPEAT(19), - [1168] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_switch_body_repeat1, 2, 0, 0), SHIFT_REPEAT(205), - [1171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [1173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [1175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selectors, 1, 0, 0), - [1177] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_selectors_repeat1, 2, 0, 0), SHIFT_REPEAT(21), - [1180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_case_selectors_repeat1, 2, 0, 0), - [1182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ident, 2, 0, 0), - [1184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specifier, 1, 0, 0), - [1186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_selector, 1, 0, 0), - [1188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enable_extension_list_repeat1, 2, 0, 0), - [1190] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enable_extension_list_repeat1, 2, 0, 0), SHIFT_REPEAT(711), - [1193] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_body_decl_repeat1, 2, 0, 0), SHIFT_REPEAT(202), - [1196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_body_decl_repeat1, 2, 0, 0), - [1198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 4, 0, 0), - [1200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), - [1202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [1204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param_list, 1, 0, 0), - [1206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), - [1208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_list, 3, 0, 0), - [1210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), - [1212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_list, 3, 0, 0), - [1214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_software_extension_list_repeat1, 2, 0, 0), - [1216] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_software_extension_list_repeat1, 2, 0, 0), SHIFT_REPEAT(710), - [1219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), - [1221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590), - [1223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 4, 0, 0), - [1225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_comma_list, 1, 0, 0), - [1229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optionally_typed_ident, 1, 0, 0), - [1231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(637), - [1233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [1235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_comma_list, 1, 0, 0), - [1237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_name_token, 1, 0, 0), - [1239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), - [1241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_rule_name, 1, 0, 0), - [1243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_alone_clause, 3, 0, 0), - [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 3, 0, 0), - [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_list, 2, 0, 0), - [1249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), - [1251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(539), - [1253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_list, 1, 0, 0), - [1255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), - [1257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [1259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_list, 1, 0, 0), - [1261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), - [1263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), - [1265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 5, 0, 0), - [1269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), - [1271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_alone_clause, 2, 0, 0), - [1273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), - [1275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), - [1277] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_comma_list_repeat1, 2, 0, 0), SHIFT_REPEAT(74), - [1280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_comma_list_repeat1, 2, 0, 0), - [1282] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_arg_comma_list_repeat1, 2, 0, 0), SHIFT_REPEAT(45), - [1285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_arg_comma_list_repeat1, 2, 0, 0), - [1287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), - [1289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_list, 2, 0, 0), - [1291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_clause, 1, 0, 0), - [1293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), - [1295] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2, 0, 0), SHIFT_REPEAT(206), - [1298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_param_list_repeat1, 2, 0, 0), - [1300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 2, 0, 0), - [1302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [1304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 3, 0, 0), - [1306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 6, 0, 0), - [1308] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_decl, 4, 0, 0), - [1310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_member, 3, 0, 0), - [1312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [1314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514), - [1316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(825), - [1318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), - [1320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_sampling_name, 1, 0, 0), - [1322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_decl, 3, 0, 0), - [1324] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_or_value_statement, 1, 0, 0), - [1326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [1328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_diagnostic_rule_name, 3, 0, 0), - [1330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_func_call_statement, 1, 0, 0), - [1332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_updating_statement, 1, 0, 0), - [1334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 3, 0, 0), - [1336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [1338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_statement, 3, 0, 0), - [1340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), - [1342] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_member, 4, 0, 0), - [1344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 7, 0, 0), - [1346] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_param, 4, 0, 0), - [1348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), - [1350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(769), - [1352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537), - [1354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1, 0, 0), - [1356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [1358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(739), - [1360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(770), - [1362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(535), - [1364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(771), - [1366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(534), - [1368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_software_extension_name, 1, 0, 0), - [1370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_value_name, 1, 0, 0), - [1372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(772), - [1374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530), - [1376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(773), - [1378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(528), - [1380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774), - [1382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526), - [1384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolate_type_name, 1, 0, 0), - [1386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(884), - [1388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), - [1390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807), - [1392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), - [1394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_header, 8, 0, 0), - [1396] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enable_extension_name, 1, 0, 0), - [1398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), - [1400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), - [1402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arg_expression, 1, 0, 0), - [1404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decrement_statement, 2, 0, 0), - [1406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_increment_statement, 2, 0, 0), - [1408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 2, 0, 0), - [1410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [1412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), - [1414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(775), - [1416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), - [1418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(832), - [1420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 1, 0, 0), - [1422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [1424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [1426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), - [1428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(776), - [1430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(521), - [1432] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optionally_typed_ident, 3, 0, 0), - [1434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [1436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), - [1438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0), - [1440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [1442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), - [1444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676), - [1446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672), - [1448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), - [1450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [1452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), - [1454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_decl, 4, 0, 0), - [1456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), - [1458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 4, 0, 0), - [1460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [1462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), - [1464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [1466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [1468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [1470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), - [1472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), - [1474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529), - [1476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), - [1478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), - [1480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(533), - [1482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(538), - [1484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546), - [1486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563), - [1488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [1490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), - [1492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), - [1494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), - [1496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), - [1498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [1500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), - [1502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [1504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), - [1506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_init, 1, 0, 0), - [1508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [1510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), - [1512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [1514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), - [1516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [1518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_or_value_statement, 3, 0, 0), - [1520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), - [1522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), - [1524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [1526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), - [1528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), - [1530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), - [1532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [1534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), - [1536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), - [1538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_value_decl, 5, 0, 0), - [1540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 3, 0, 0), - [1542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), - [1544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_or_value_statement, 4, 0, 0), - [1546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), - [1548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), - [1550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), - [1552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), - [1554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_statement, 2, 0, 0), - [1556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), - [1558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [1560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_variable_decl, 4, 0, 0), - [1562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), - [1564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), - [1566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), - [1568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), - [1570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), - [1572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), - [1574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), - [1576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), - [1578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), - [1580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), - [1582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), - [1584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(675), - [1586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), - [1588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_severity_control_name, 1, 0, 0), - [1590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), - [1592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), - [1594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), - [1596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), - [1598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 2, 0, 0), - [1600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), - [1602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), - [1604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), - [1606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), - [1608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), - [1610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574), - [1612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473), - [1614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), - [1616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498), - [1618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), - [1620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), - [1622] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_update, 1, 0, 0), - [1624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [1626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [1628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [1630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490), - [1632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), - [1634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [1636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_assert_statement, 2, 0, 0), - [1638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), - [1640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [1642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), - [1644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [1646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [1648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), - [1650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 3, 0, 0), - [1652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), - [1654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625), - [1656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [1658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [1660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [1662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), - [1664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [1666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [1668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), - [1670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [1672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [1674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [1676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [1678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), - [1680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545), - [1682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), - [1684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(583), - [1686] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [1688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 4, 0, 0), - [1690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), - [1692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_header, 5, 0, 0), - [1694] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_if_statement, 4, 0, 0), - [1696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), - [1698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continuing_compound_statement, 5, 0, 0), -}; - -enum ts_external_scanner_symbol_identifiers { - ts_external_token__block_comment = 0, - ts_external_token__disambiguate_template = 1, - ts_external_token__template_args_start = 2, - ts_external_token__template_args_end = 3, - ts_external_token__less_than = 4, - ts_external_token__less_than_equal = 5, - ts_external_token__shift_left = 6, - ts_external_token__shift_left_assign = 7, - ts_external_token__greater_than = 8, - ts_external_token__greater_than_equal = 9, - ts_external_token__shift_right = 10, - ts_external_token__shift_right_assign = 11, - ts_external_token__error_sentinel = 12, -}; - -static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { - [ts_external_token__block_comment] = sym__block_comment, - [ts_external_token__disambiguate_template] = sym__disambiguate_template, - [ts_external_token__template_args_start] = sym__template_args_start, - [ts_external_token__template_args_end] = sym__template_args_end, - [ts_external_token__less_than] = sym__less_than, - [ts_external_token__less_than_equal] = sym__less_than_equal, - [ts_external_token__shift_left] = sym__shift_left, - [ts_external_token__shift_left_assign] = sym__shift_left_assign, - [ts_external_token__greater_than] = sym__greater_than, - [ts_external_token__greater_than_equal] = sym__greater_than_equal, - [ts_external_token__shift_right] = sym__shift_right, - [ts_external_token__shift_right_assign] = sym__shift_right_assign, - [ts_external_token__error_sentinel] = sym__error_sentinel, -}; - -static const bool ts_external_scanner_states[21][EXTERNAL_TOKEN_COUNT] = { - [1] = { - [ts_external_token__block_comment] = true, - [ts_external_token__disambiguate_template] = true, - [ts_external_token__template_args_start] = true, - [ts_external_token__template_args_end] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__shift_left_assign] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - [ts_external_token__shift_right] = true, - [ts_external_token__shift_right_assign] = true, - [ts_external_token__error_sentinel] = true, - }, - [2] = { - [ts_external_token__block_comment] = true, - }, - [3] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_end] = true, - }, - [4] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_start] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - [ts_external_token__shift_right] = true, - }, - [5] = { - [ts_external_token__block_comment] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - [ts_external_token__shift_right] = true, - }, - [6] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_start] = true, - [ts_external_token__template_args_end] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - [ts_external_token__shift_right] = true, - }, - [7] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_start] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - }, - [8] = { - [ts_external_token__block_comment] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - }, - [9] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_end] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - [ts_external_token__shift_right] = true, - }, - [10] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_start] = true, - }, - [11] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_start] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__shift_right] = true, - }, - [12] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_start] = true, - [ts_external_token__template_args_end] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - }, - [13] = { - [ts_external_token__block_comment] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__shift_right] = true, - }, - [14] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_end] = true, - [ts_external_token__less_than] = true, - [ts_external_token__less_than_equal] = true, - [ts_external_token__greater_than] = true, - [ts_external_token__greater_than_equal] = true, - }, - [15] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_start] = true, - [ts_external_token__shift_left_assign] = true, - [ts_external_token__shift_right_assign] = true, - }, - [16] = { - [ts_external_token__block_comment] = true, - [ts_external_token__shift_left_assign] = true, - [ts_external_token__shift_right_assign] = true, - }, - [17] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_start] = true, - [ts_external_token__template_args_end] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__shift_right] = true, - }, - [18] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_start] = true, - [ts_external_token__template_args_end] = true, - }, - [19] = { - [ts_external_token__block_comment] = true, - [ts_external_token__template_args_end] = true, - [ts_external_token__shift_left] = true, - [ts_external_token__shift_right] = true, - }, - [20] = { - [ts_external_token__block_comment] = true, - [ts_external_token__disambiguate_template] = true, - }, -}; - -#ifdef __cplusplus -extern "C" { -#endif -void *tree_sitter_wgsl_external_scanner_create(void); -void tree_sitter_wgsl_external_scanner_destroy(void *); -bool tree_sitter_wgsl_external_scanner_scan(void *, TSLexer *, const bool *); -unsigned tree_sitter_wgsl_external_scanner_serialize(void *, char *); -void tree_sitter_wgsl_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_wgsl(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, - .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_ident_pattern_token, - .external_scanner = { - &ts_external_scanner_states[0][0], - ts_external_scanner_symbol_map, - tree_sitter_wgsl_external_scanner_create, - tree_sitter_wgsl_external_scanner_destroy, - tree_sitter_wgsl_external_scanner_scan, - tree_sitter_wgsl_external_scanner_serialize, - tree_sitter_wgsl_external_scanner_deserialize, - }, - .primary_state_ids = ts_primary_state_ids, - }; - return &language; -} -#ifdef __cplusplus -} -#endif diff --git a/src/scanner.cpp b/src/scanner.c similarity index 53% rename from src/scanner.cpp rename to src/scanner.c index 737b694..084b3fc 100644 --- a/src/scanner.cpp +++ b/src/scanner.c @@ -1,12 +1,11 @@ #include "tree_sitter/parser.h" +#include +#include +#include +#include +#include +#include #include -#include -#include -#include -#include -#include -#include -#include #define ENABLE_LOGGING 0 @@ -16,82 +15,100 @@ #define LOG(...) #endif -namespace { - /// The possible external tokens matched by this custom scanner. /// The order of the entries in this enumerator must match the 'externals' in /// the grammar.js. enum Token { BLOCK_COMMENT, - DISAMBIGUATE_TEMPLATE, // A zero-length token used to scan ahead + DISAMBIGUATE_TEMPLATE, // A zero-length token used to scan ahead TEMPLATE_ARGS_START, TEMPLATE_ARGS_END, - LESS_THAN, // '<' - LESS_THAN_EQUAL, // '<=' - SHIFT_LEFT, // '<<' - SHIFT_LEFT_ASSIGN, // '<<=' - GREATER_THAN, // '>' - GREATER_THAN_EQUAL, // '>=' - SHIFT_RIGHT, // '>>' - SHIFT_RIGHT_ASSIGN, // '>>=' + LESS_THAN, // '<' + LESS_THAN_EQUAL, // '<=' + SHIFT_LEFT, // '<<' + SHIFT_LEFT_ASSIGN, // '<<=' + GREATER_THAN, // '>' + GREATER_THAN_EQUAL, // '>=' + SHIFT_RIGHT, // '>>' + SHIFT_RIGHT_ASSIGN, // '>>=' // A sentinel value used to signal an error has occurred already. // https://tree-sitter.github.io/tree-sitter/creating-parsers#other-external-scanner-details ERROR, }; -const char* str(Token tok,bool brief=false) { +static const char *tree_sitter_wgsl_str(enum Token tok, bool brief) { switch (tok) { - case Token::BLOCK_COMMENT: - return "BLOCK_COMMENT"; - case Token::DISAMBIGUATE_TEMPLATE: - return "DISAMBIGUATE_TEMPLATE"; - case Token::TEMPLATE_ARGS_START: - return "TEMPLATE_ARGS_START"; - case Token::TEMPLATE_ARGS_END: - return "TEMPLATE_ARGS_END"; - case Token::LESS_THAN: - return brief ? "<" : "LESS_THAN"; - case Token::LESS_THAN_EQUAL: - return brief ? "<=" : "LESS_THAN_EQUAL"; - case Token::SHIFT_LEFT: - return brief ? "<<" : "SHIFT_LEFT"; - case Token::SHIFT_LEFT_ASSIGN: - return brief ? "<<=" : "SHIFT_LEFT_ASSIGN"; - case Token::GREATER_THAN: - return brief ? ">" : "GREATER_THAN"; - case Token::GREATER_THAN_EQUAL: - return brief ? ">=" : "GREATER_THAN_EQUAL"; - case Token::SHIFT_RIGHT: - return brief ? ">>" : "SHIFT_RIGHT"; - case Token::SHIFT_RIGHT_ASSIGN: - return brief ? ">>=" : "SHIFT_RIGHT_ASSIGN"; - case Token::ERROR: - return "ERROR"; - default: - return ""; + case BLOCK_COMMENT: + return "BLOCK_COMMENT"; + case DISAMBIGUATE_TEMPLATE: + return "DISAMBIGUATE_TEMPLATE"; + case TEMPLATE_ARGS_START: + return "TEMPLATE_ARGS_START"; + case TEMPLATE_ARGS_END: + return "TEMPLATE_ARGS_END"; + case LESS_THAN: + return brief ? "<" : "LESS_THAN"; + case LESS_THAN_EQUAL: + return brief ? "<=" : "LESS_THAN_EQUAL"; + case SHIFT_LEFT: + return brief ? "<<" : "SHIFT_LEFT"; + case SHIFT_LEFT_ASSIGN: + return brief ? "<<=" : "SHIFT_LEFT_ASSIGN"; + case GREATER_THAN: + return brief ? ">" : "GREATER_THAN"; + case GREATER_THAN_EQUAL: + return brief ? ">=" : "GREATER_THAN_EQUAL"; + case SHIFT_RIGHT: + return brief ? ">>" : "SHIFT_RIGHT"; + case SHIFT_RIGHT_ASSIGN: + return brief ? ">>=" : "SHIFT_RIGHT_ASSIGN"; + case ERROR: + return "ERROR"; + default: + return ""; } } -using CodePoint = uint32_t; +typedef uint32_t CodePoint; -static constexpr CodePoint kEOF = 0; +static const CodePoint kEOF = 0; -struct CodePointRange { - CodePoint first; // First code point in the interval - CodePoint last; // Last code point in the interval (inclusive) -}; +typedef struct { + CodePoint first; // First code point in the interval + CodePoint last; // Last code point in the interval (inclusive) +} CodePointRange; -inline bool operator<(CodePoint code_point, CodePointRange range) { +static bool code_point_less_than(CodePoint code_point, CodePointRange range) { return code_point < range.first; } -inline bool operator<(CodePointRange range, CodePoint code_point) { +static bool range_less_than(CodePointRange range, CodePoint code_point) { return range.last < code_point; } +/* Implement C++ std::binary_search using C */ +static bool binary_search(const CodePointRange *ranges, size_t num_ranges, + CodePoint code_point) { + size_t left = 0; + size_t right = num_ranges; + + while (left < right) { + size_t mid = left + (right - left) / 2; + if (range_less_than(ranges[mid], code_point)) { + left = mid + 1; + } else if (code_point_less_than(code_point, ranges[mid])) { + right = mid; + } else { + return true; + } + } + + return false; +} + // Interval ranges of all code points in the Unicode 14 XID_Start set // This array needs to be in ascending order. -constexpr CodePointRange kXIDStartRanges[] = { +static const CodePointRange kXIDStartRanges[] = { {0x00041, 0x0005a}, {0x00061, 0x0007a}, {0x000aa, 0x000aa}, {0x000b5, 0x000b5}, {0x000ba, 0x000ba}, {0x000c0, 0x000d6}, {0x000d8, 0x000f6}, {0x000f8, 0x002c1}, {0x002c6, 0x002d1}, @@ -314,13 +331,13 @@ constexpr CodePointRange kXIDStartRanges[] = { }; // Number of ranges in kXIDStartRanges -constexpr size_t kNumXIDStartRanges = +const size_t kNumXIDStartRanges = sizeof(kXIDStartRanges) / sizeof(kXIDStartRanges[0]); // The additional code point interval ranges for the Unicode 14 XID_Continue // set. This extends the values in kXIDStartRanges. // This array needs to be in ascending order. -constexpr CodePointRange kXIDContinueRanges[] = { +static const CodePointRange kXIDContinueRanges[] = { {0x00030, 0x00039}, {0x0005f, 0x0005f}, {0x000b7, 0x000b7}, {0x00300, 0x0036f}, {0x00387, 0x00387}, {0x00483, 0x00487}, {0x00591, 0x005bd}, {0x005bf, 0x005bf}, {0x005c1, 0x005c2}, @@ -445,12 +462,12 @@ constexpr CodePointRange kXIDContinueRanges[] = { }; // Number of ranges in kXIDContinueRanges -constexpr size_t kNumXIDContinueRanges = +const size_t kNumXIDContinueRanges = sizeof(kXIDContinueRanges) / sizeof(kXIDContinueRanges[0]); /// @param code_point the input code_point /// @return true if the code_point is part of the XIDStart unicode set -bool is_xid_start(CodePoint code_point) { +static bool is_xid_start(CodePoint code_point) { // Fast path for ASCII. if ((code_point >= 'a' && code_point <= 'z') || (code_point >= 'A' && code_point <= 'Z')) { @@ -462,603 +479,683 @@ bool is_xid_start(CodePoint code_point) { if (code_point < 0x000aa) { return false; } - return std::binary_search(kXIDStartRanges, - kXIDStartRanges + kNumXIDStartRanges, code_point); + return binary_search(kXIDStartRanges, kNumXIDStartRanges, code_point); } /// @param code_point the input code_point /// @return true if the code_point is part of the XIDContinue unicode set -bool is_xid_continue(CodePoint code_point) { +static bool is_xid_continue(CodePoint code_point) { // Short circuit ASCII. The binary search will find these last, but most // of our current source is ASCII, so handle them quicker. if ((code_point >= '0' && code_point <= '9') || code_point == '_') { return true; } return is_xid_start(code_point) || - std::binary_search(kXIDContinueRanges, - kXIDContinueRanges + kNumXIDContinueRanges, - code_point); + binary_search(kXIDContinueRanges, kNumXIDContinueRanges, code_point); } -/// @return true if @p code_point is considered a whitespace -bool is_space(CodePoint code_point) { +/// @return true if @p code_point is considered a blankspace +static bool is_space(CodePoint code_point) { switch (code_point) { - case 0x0020: - case 0x0009: - case 0x000a: - case 0x000b: - case 0x000c: - case 0x000d: - case 0x0085: - case 0x200e: - case 0x200f: - case 0x2028: - case 0x2029: - return true; - default: - return false; + case 0x0020: + case 0x0009: + case 0x000a: + case 0x000b: + case 0x000c: + case 0x000d: + case 0x0085: + case 0x200e: + case 0x200f: + case 0x2028: + case 0x2029: + return true; + default: + return false; } } /// A fixed capacity, dynamic sized queue of bits (expressed as bools) -template -class BitQueue { - public: - /// @param index the index of the bit starting from the front - /// @return the bit value - auto operator[](size_t index) { - assert(index < count()); // TODO(dneto): this should error out. - return bits_[(index + read_offset_) % CAPACITY_IN_BITS]; - } +#define BITQUEUE_CAPACITY 64 + +typedef struct { + uint64_t bits; + size_t count; + size_t read_offset; +} BitQueue; + +/// @param index the index of the bit starting from the front +/// @return the bit value +static bool bitqueue_get(BitQueue *queue, size_t index) { + assert(index < queue->count); + return (queue->bits >> ((index + queue->read_offset) % BITQUEUE_CAPACITY)) & + 1; +} - /// Removes the bit at the front of the queue - /// @returns the value of the bit that was removed - bool pop_front() { - assert(count_ > 0); - bool value = (*this)[0]; - count_--; - read_offset_++; - return value; +static void bitqueue_set(BitQueue *queue, size_t index, bool value) { + assert(index < queue->count); + size_t bit_index = (index + queue->read_offset) % BITQUEUE_CAPACITY; + if (value) { + queue->bits |= (1ULL << bit_index); + } else { + queue->bits &= ~(1ULL << bit_index); } +} - /// Appends a bit to the back of the queue - void push_back(bool value) { - assert(count_ < CAPACITY_IN_BITS); - count_++; - (*this)[count_ - 1] = value; - } +/// Removes the bit at the front of the queue +/// @returns the value of the bit that was removed +static bool bitqueue_pop_front(BitQueue *queue) { + assert(queue->count > 0); + bool value = bitqueue_get(queue, 0); + queue->count--; + queue->read_offset++; + return value; +} - /// @returns true if the queue holds no bits. - bool empty() const { return count_ == 0; } +/// Appends a bit to the back of the queue +static void bitqueue_push_back(BitQueue *queue, bool value) { + assert(queue->count < BITQUEUE_CAPACITY); + queue->count++; + bitqueue_set(queue, queue->count - 1, value); +} - /// @returns the number of bits held by the queue. - size_t count() const { return count_; } +/// @returns true if the queue holds no bits. +static bool bitqueue_empty(const BitQueue *queue) { return queue->count == 0; } + +/// @returns the number of bits held by the queue. +static size_t bitqueue_count(const BitQueue *queue) { return queue->count; } - private: - std::bitset bits_; - size_t count_ = 0; // number of bits contained - size_t read_offset_ = 0; // read offset in bits - // #if ENABLE_LOGGING - public: - void to_chars(std::string& str) { - std::stringstream ss; - ss << count_ << ":"; - for (auto i = 0; i < count_; ++i) { - bool is_template = (*this)[i]; - ss << (is_template ? "#" : "."); - } - str = ss.str(); +static void bitqueue_to_chars(const BitQueue *queue, char *str) { + sprintf(str, "%zu:", queue->count); + for (size_t i = 0; i < queue->count; ++i) { + strcat(str, bitqueue_get(queue, i) ? "#" : "."); } +} #endif -}; -class Lexer { - public: - Lexer(TSLexer* l) : lexer_(l) {} +typedef struct { + TSLexer *lexer; +} Lexer; - /// Advances the lexer by one code point. - void advance() { lexer_->advance(lexer_, /* whitespace */ false); } +static void lexer_init(Lexer *lexer, TSLexer *l) { lexer->lexer = l; } - /// Returns the next code point, advancing the lexer by one code point. - CodePoint next() { - // TODO(dneto): should assert !lexer_->eof(lexer_) - CodePoint lookahead = lexer_->lookahead; - advance(); - return lookahead; - } +/// Advances the lexer by one code point. +static void lexer_advance(Lexer *lexer) { lexer->lexer->advance(lexer->lexer, false); } - /// @return the next code point without advancing the lexer, or kEOF if there - /// are no more code points - CodePoint peek() { return lexer_->eof(lexer_) ? kEOF : lexer_->lookahead; } +/// Returns the next code point, advancing the lexer by one code point. +static CodePoint lexer_next(Lexer *lexer) { + // TODO(dneto): should assert !lexer_->eof(lexer_) + CodePoint lookahead = lexer->lexer->lookahead; + lexer_advance(lexer); + return lookahead; +} + +/// @return the next code point without advancing the lexer, or kEOF if there +/// are no more code points +static CodePoint lexer_peek(Lexer *lexer) { + return lexer->lexer->eof(lexer->lexer) ? kEOF : lexer->lexer->lookahead; +} + +/// @return true if the next code point is equal to @p code_point. +/// @note if the code point was found, then the lexer is advanced to that code +/// point. +static bool lexer_match(Lexer *lexer, CodePoint code_point) { + if (lexer_peek(lexer) == code_point) { + lexer_advance(lexer); + return true; + } + return false; +} - /// @return true if the next code point is equal to @p code_point. - /// @note if the code point was found, then the lexer is advanced to that code - /// point. - bool match(CodePoint code_point) { - if (peek() == code_point) { - advance(); +/// @return true if the next code point is found in @p code_points. +/// @note if the code point was found, then the lexer is advanced to that code +/// point. +static bool lexer_match_anyof(Lexer *lexer, const CodePoint *code_points, + size_t count) { + for (size_t i = 0; i < count; i++) { + if (lexer_match(lexer, code_points[i])) { return true; } - return false; } + return false; +} - /// @return true if the next code point is found in @p code_points. - /// @note if the code point was found, then the lexer is advanced to that code - /// point. - bool match_anyof(std::initializer_list code_points) { - for (CodePoint code_point : code_points) { - if (match(code_point)) { - return true; - } - } +/// Attempts to match an identifier pattern that starts with XIDStart followed +/// by any number of XIDContinue code points. +static bool lexer_match_identifier(Lexer *lexer) { + if (!is_xid_start(lexer_peek(lexer))) { return false; } - /// Attempts to match an identifier pattern that starts with XIDStart followed by - /// any number of XIDContinue code points. - bool match_identifier() { - if (!is_xid_start(peek())) { - return false; - } + bool is_ascii = true; + CodePoint start = lexer_next(lexer); + if (start >= 0x80) { + is_ascii = false; + } - bool is_ascii = true; - if (CodePoint start = next(); start < 0x80) { - } else { + while (true) { + if (!is_xid_continue(lexer_peek(lexer))) { + break; + } + CodePoint code_point = lexer_next(lexer); + if (code_point >= 0x80) { is_ascii = false; } + } - while (true) { - if (!is_xid_continue(peek())) { - break; - } - if (CodePoint code_point = next(); code_point < 0x80) { - } else { - is_ascii = false; - } - } + if (is_ascii) { + LOG("ident is ascii"); + } else { + LOG("ident"); + } - if (is_ascii) { - LOG("ident is ascii"); - } else { - LOG("ident"); - } + return true; +} - return true; +/// Attempts to match a /* block comment */ +static bool lexer_match_block_comment(Lexer *lexer) { + // TODO(dneto): Need to un-advance if matched '/' but not '*' + if (!lexer_match(lexer, '/') || !lexer_match(lexer, '*')) { + return false; } - /// Attempts to match a /* block comment */ - bool match_block_comment() { - // TODO(dneto): Need to un-advance if matched '/' but not '*' - if (!match('/') || !match('*')) { - return false; - } - - size_t nesting = 1; - while (nesting > 0 && !match(kEOF)) { - // TODO(dneto): If we match '/' but not '*' there is no way to un-advance - // back to make '/' the lookahead. - if (match('/') && match('*')) { - nesting++; + size_t nesting = 1; + while (nesting > 0 && !lexer_match(lexer, kEOF)) { + // TODO(dneto): If we match '/' but not '*' there is no way to un-advance + // back to make '/' the lookahead. + if (lexer_match(lexer, '/') && lexer_match(lexer, '*')) { + nesting++; // TODO(dneto): Same here, need to be able to un-advance to before '*' - } else if (match('*') && match('/')) { - nesting--; - } else { - next(); - } + } else if (lexer_match(lexer, '*') && lexer_match(lexer, '/')) { + nesting--; + } else { + lexer_next(lexer); } - return true; } + return true; +} - /// Advances the lexer while the next code point is considered whitespace - void skip_whitespace() { - while (is_space(peek())) { - lexer_->advance(lexer_, /* whitespace */ true); - } +/// Advances the lexer while the next code point is considered blankspace +static void lexer_skip_blankspace(Lexer *lexer) { + while (is_space(lexer_peek(lexer))) { + lexer->lexer->advance(lexer->lexer, true); } +} - private: - TSLexer* lexer_; -}; +typedef struct { + BitQueue lt_is_tmpl; // Queue of disambiguated '<' + BitQueue gt_is_tmpl; // Queue of disambiguated '>' +} ScannerState; + +typedef struct { + ScannerState state; +} Scanner; + +/* Stack entry for template argument parsing */ +typedef struct { + size_t index; // Index of the opening '>' in lt_is_tmpl + size_t expr_depth; // The value of 'expr_depth' for the opening '<' +} StackEntry; + +/* Dynamic array for StackEntry */ +typedef struct { + StackEntry *data; + size_t size; + size_t capacity; +} StackEntryArray; + +static void stack_entry_array_init(StackEntryArray *array) { + array->data = NULL; + array->size = 0; + array->capacity = 0; +} -struct Scanner { - struct State { - BitQueue<64> lt_is_tmpl; // Queue of disambiguated '<' - BitQueue<64> gt_is_tmpl; // Queue of disambiguated '>' - bool empty() const { return lt_is_tmpl.empty() && gt_is_tmpl.empty(); } - }; - State state; - static_assert(sizeof(State) < TREE_SITTER_SERIALIZATION_BUFFER_SIZE); - // State is trivially copyable, so it can be serialized and deserialized - // with memcpy. - static_assert(std::is_trivially_copyable::value); - - /// Updates #state with the disambiguated '<' and '>' tokens. - /// The following assumptions are made on entry: - /// * lexer has just advanced to the end of an identifier - /// On exit, all '<' and '>' template tokens will be paired up to the closing - /// '>' for the first '<'. - void classify_template_args(Lexer& lexer) { - LOG("classify_template_args()"); - - if (!lexer.match('<')) { - LOG(" missing '<'"); +static void stack_entry_array_push(StackEntryArray *array, StackEntry entry) { + if (array->size == array->capacity) { + size_t new_capacity = array->capacity == 0 ? 1 : array->capacity * 2; + StackEntry *new_data = + realloc(array->data, new_capacity * sizeof(StackEntry)); + if (new_data == NULL) { + /* Handle allocation failure */ return; } + array->data = new_data; + array->capacity = new_capacity; + } + array->data[array->size++] = entry; +} - // The current expression nesting depth. - size_t expr_depth = 0; +static void stack_entry_array_pop(StackEntryArray *array) { + if (array->size > 0) { + array->size--; + } +} - // A stack of '<' tokens. Each is a candidate for the start of a template list. - // Used to pair '<' and '>' tokens at the same expression depth. - struct StackEntry { - size_t index; // Index of the opening '>' in lt_is_tmpl - size_t expr_depth; // The value of 'expr_depth' for the opening '<' - }; - // The stack of unclosed candidates for template-list starts. - std::vector lt_stack; +static StackEntry *stack_entry_array_back(StackEntryArray *array) { + if (array->size > 0) { + return &array->data[array->size - 1]; + } + return NULL; +} - LOG("classify_template_args() '<' (initial)"); - lt_stack.push_back(StackEntry{state.lt_is_tmpl.count(), expr_depth}); - // Default to less-than (or less-than-equal, or left-shift, or left-shift-equal) - state.lt_is_tmpl.push_back(false); +static bool stack_entry_array_empty(StackEntryArray *array) { + return array->size == 0; +} - while (!lt_stack.empty() && !lexer.match(kEOF)) { - lexer.skip_whitespace(); +static void stack_entry_array_clear(StackEntryArray *array) { array->size = 0; } - // TODO: skip line-ending comments. - if (lexer.match_block_comment()) { - continue; - } +static void stack_entry_array_free(StackEntryArray *array) { + free(array->data); + array->data = NULL; + array->size = 0; + array->capacity = 0; +} - // A template list can't contain an assignment or a compound assignment. - // There is logic below which clears the stack when reaching one of those. - // It looks for a '=' code point. But we still want to allow - // comparison operations inside expressions. So we must pre-emptively - // allow operators: == >= <= != - - // Look for a nested template-list. - if (lexer.match_identifier()) { - lexer.skip_whitespace(); // TODO: Skip comments - if (lexer.match('<')) { - LOG("classify_template_args() '<' after ident"); - // Record this '<' in state.lt_is_tmpl, initially treating this as the operator - // in an expression (less-than, less-than, equal, left-shift, or left-shift-equal). - // If this '<' is recorded in lt_stack, and a corresponding '>' is found, then this - // will be transformed into a template-start token. - state.lt_is_tmpl.push_back(false); - - if (lexer.match('=')) { - // We entered the loop at "ident<=". No template arg can start with '=', - // so consider "<=" to be a single token. - // Litmus test: "alias z = a;" - } else if (lexer.match('<')) { - // We entered the loop at "ident<<". No template arg can start with '<', - // so consider "<<" to be a single token. - // Litmus test: "alias z = a;" - state.lt_is_tmpl.push_back(false); - } else { - lt_stack.push_back(StackEntry{state.lt_is_tmpl.count()-1, expr_depth}); - } - } - continue; - } +/// Updates #state with the disambiguated '<' and '>' tokens. +/// The following assumptions are made on entry: +/// * lexer has just advanced to the end of an identifier +/// On exit, all '<' and '>' template tokens will be paired up to the closing +/// '>' for the first '<'. +static void classify_template_args(Scanner *scanner, Lexer *lexer) { + LOG("classify_template_args()"); + + if (!lexer_match(lexer, '<')) { + LOG(" missing '<'"); + return; + } - // Each '<' must be recorded in the lt_is_tmpl queue. - // Each '>' must be recorded in the gt_is_tmpl queue. + // The current expression nesting depth. + size_t expr_depth = 0; - if (lexer.match('<')) { - // Litmus test: "alias z =a<1<()>;" - LOG("classify_template_args() '<'"); - state.lt_is_tmpl.push_back(false); - continue; - } + // A stack of '<' tokens. Each is a candidate for the start of a template + // list. Used to pair '<' and '>' tokens at the same expression depth. + StackEntryArray lt_stack; + stack_entry_array_init(<_stack); + + LOG("classify_template_args() '<' (initial)"); + StackEntry entry = {bitqueue_count(&scanner->state.lt_is_tmpl), expr_depth}; + stack_entry_array_push(<_stack, entry); + // Default to less-than (or less-than-equal, or left-shift, or + // left-shift-equal) + bitqueue_push_back(&scanner->state.lt_is_tmpl, false); + + while (!stack_entry_array_empty(<_stack) && !lexer_match(lexer, kEOF)) { + lexer_skip_blankspace(lexer); + + // TODO: skip line-ending comments. + if (lexer_match_block_comment(lexer)) { + continue; + } - if (lexer.match('>')) { - LOG("classify_template_args() '>'"); - if (!lt_stack.empty() && lt_stack.back().expr_depth == expr_depth) { - LOG(" TEMPLATE MATCH"); - state.gt_is_tmpl.push_back(true); - state.lt_is_tmpl[lt_stack.back().index] = true; - lt_stack.pop_back(); + // A template list can't contain an assignment or a compound assignment. + // There is logic below which clears the stack when reaching one of those. + // It looks for a '=' code point. But we still want to allow + // comparison operations inside expressions. So we must pre-emptively + // allow operators: == >= <= != + + // Look for a nested template-list. + if (lexer_match_identifier(lexer)) { + lexer_skip_blankspace(lexer); + if (lexer_match(lexer, '<')) { + LOG("classify_template_args() '<' after ident"); + bitqueue_push_back(&scanner->state.lt_is_tmpl, false); + + if (lexer_match(lexer, '=')) { + // We entered the loop at "ident<=". No template arg can start with + // '=', so consider "<=" to be a single token. Litmus test: "alias z + // = a;" + } else if (lexer_match(lexer, '<')) { + // We entered the loop at "ident<<". No template arg can start with + // '<', so consider "<<" to be a single token. Litmus test: "alias z + // = a;" + bitqueue_push_back(&scanner->state.lt_is_tmpl, false); } else { - LOG(" non-template '>'"); - state.gt_is_tmpl.push_back(false); - // Pre-emptvely allow >= as a comparison operator: - // Skip over '=', if present. - lexer.match('='); + StackEntry new_entry = { + bitqueue_count(&scanner->state.lt_is_tmpl) - 1, expr_depth}; + stack_entry_array_push(<_stack, new_entry); } - continue; } + continue; + } - // Pre-emptively allow the != operator. - // As a side effect, allow unary negation operator ! - if (lexer.match('!')) { - lexer.match('='); - continue; - } + // Each '<' must be recorded in the lt_is_tmpl queue. + // Each '>' must be recorded in the gt_is_tmpl queue. - CodePoint was = lexer.peek(); - if (lexer.match_anyof({'(', '['})) { - LOG(" %c expr_depth++", static_cast(was)); - // Entering a nested expression - expr_depth++; - continue; - } + if (lexer_match(lexer, '<')) { + // Litmus test: "alias z =a<1<()>;" + LOG("classify_template_args() '<'"); + bitqueue_push_back(&scanner->state.lt_is_tmpl, false); + continue; + } - if (lexer.match_anyof({')', ']'})) { - LOG(" %c expr_depth--", static_cast(was)); - // Exiting a nested expression - // Pop the stack until we return to the current expression - // expr_depth - while (!lt_stack.empty() && lt_stack.back().expr_depth == expr_depth) { - lt_stack.pop_back(); - } - if (expr_depth > 0) { - expr_depth--; - } - continue; + if (lexer_match(lexer, '>')) { + LOG("classify_template_args() '>'"); + StackEntry *back = stack_entry_array_back(<_stack); + if (back != NULL && back->expr_depth == expr_depth) { + LOG(" TEMPLATE MATCH"); + bitqueue_push_back(&scanner->state.gt_is_tmpl, true); + bitqueue_set(&scanner->state.lt_is_tmpl, back->index, true); + stack_entry_array_pop(<_stack); + } else { + LOG(" non-template '>'"); + bitqueue_push_back(&scanner->state.gt_is_tmpl, false); + // Pre-emptvely allow >= as a comparison operator: + // Skip over '=', if present. + lexer_match(lexer, '='); } + continue; + } - was = lexer.peek(); - if (lexer.match('=')) { - // A subtle point. The '=' we just matched might be the start of a - // syntactic token, or the end of a compound-assignment operator like += - // In either case, it's fine to proceed with the logic below. + // Pre-emptively allow the != operator. + // As a side effect, allow unary negation operator ! + if (lexer_match(lexer, '!')) { + lexer_match(lexer, '='); + continue; + } - if (lexer.match('=')) { - // Pre-emptively allow equality == - continue; - } - // A template list can't contain an assignment, because an expression - // can't contain an assignment. - // This might be a regular assignment, or the tail end of a compound - // assignment. - LOG(" %c expression terminator", was); - expr_depth = 0; - lt_stack.clear(); - continue; - } + CodePoint was = lexer_peek(lexer); + if (lexer_match(lexer, '(') || lexer_match(lexer, '[')) { + LOG(" %c expr_depth++", (int)was); + // Entering a nested expression + expr_depth++; + continue; + } - was = lexer.peek(); - if (lexer.match_anyof({';', '{', ':'})) { - LOG(" %c expression terminator", was); - // Expression terminating tokens. No template list can - // hold these code points, so clear the stack and expression depth. - expr_depth = 0; - lt_stack.clear(); - continue; + if (lexer_match(lexer, ')') || lexer_match(lexer, ']')) { + LOG(" %c expr_depth--", (int)was); + // Exiting a nested expression + // Pop the stack until we return to the current expression + // expr_depth + while (!stack_entry_array_empty(<_stack) && + stack_entry_array_back(<_stack)->expr_depth == expr_depth) { + stack_entry_array_pop(<_stack); } - - bool short_circuit = false; - if (lexer.match('&')) { - short_circuit = lexer.match('&'); - } else if (lexer.match('|')) { - short_circuit = lexer.match('|'); + if (expr_depth > 0) { + expr_depth--; } - if (short_circuit) { - LOG(" short-circuiting expression"); - // Treat 'a < b || c > d' as a logical binary operator of two - // comparison operators instead of a single template argument - // 'b||c'. Use parentheses around 'b||c' to parse as a - // template argument list. - while (!lt_stack.empty() && lt_stack.back().expr_depth == expr_depth) { - lt_stack.pop_back(); - } + continue; + } + + was = lexer_peek(lexer); + if (lexer_match(lexer, '=')) { + // A subtle point. The '=' we just matched might be the start of a + // syntactic token, or the end of a compound-assignment operator like += + // In either case, it's fine to proceed with the logic below. + + if (lexer_match(lexer, '=')) { + // Pre-emptively allow equality == continue; } + // A template list can't contain an assignment, because an expression + // can't contain an assignment. + // This might be a regular assignment, or the tail end of a compound + // assignment. + LOG(" %c expression terminator", (int)was); + expr_depth = 0; + stack_entry_array_clear(<_stack); + continue; + } - LOG(" skip: '%c'",char(lexer.peek())); - lexer.next(); + was = lexer_peek(lexer); + if (lexer_match(lexer, ';') || lexer_match(lexer, '{') || + lexer_match(lexer, ':')) { + LOG(" %c expression terminator", (int)was); + // Expression terminating tokens. No template list can + // hold these code points, so clear the stack and expression depth. + expr_depth = 0; + stack_entry_array_clear(<_stack); + continue; } - } - std::string valids(const bool* const valid_symbols) { - std::string result; - for (int i = 0; i < static_cast(ERROR) ; i++) { - result += std::string(valid_symbols[i] ? "+" : "_"); + bool short_circuit = false; + if (lexer_match(lexer, '&')) { + short_circuit = lexer_match(lexer, '&'); + } else if (lexer_match(lexer, '|')) { + short_circuit = lexer_match(lexer, '|'); } - for (int i = 0; i < static_cast(ERROR) ; i++) { - if (valid_symbols[i]) { - result += std::string(" ") + str(static_cast(i),true); + if (short_circuit) { + LOG(" short-circuiting expression"); + // Treat 'a < b || c > d' as a logical binary operator of two + // comparison operators instead of a single template argument + // 'b||c'. Use parentheses around 'b||c' to parse as a + // template argument list. + while (!stack_entry_array_empty(<_stack) && + stack_entry_array_back(<_stack)->expr_depth == expr_depth) { + stack_entry_array_pop(<_stack); } + continue; } - return result; - } - /// The external token scanner function. Handles block comments and - /// template-argument-list vs less-than / greater-than disambiguation. - /// @return true if lexer->result_symbol was assigned a Token, or - /// false if the token should be taken from the regular WGSL tree-sitter - /// grammar. - bool scan(TSLexer* ts_lexer, const bool* const valid_symbols) { - Lexer lexer{ts_lexer}; + LOG(" skip: '%c'", (char)lexer_peek(lexer)); + lexer_next(lexer); + } - LOG("scan: '%c' [%u] %s", char(lexer.peek()), unsigned(ts_lexer->get_column(ts_lexer)), valids(valid_symbols).c_str()); + stack_entry_array_free(<_stack); +} - if (valid_symbols[Token::ERROR]) { - ts_lexer->result_symbol = Token::ERROR; - return true; +static char *valids(const bool *const valid_symbols) { + static char result[256]; + char *p = result; + for (int i = 0; i < ERROR; i++) { + *p++ = valid_symbols[i] ? '+' : '_'; + } + *p++ = ' '; + for (int i = 0; i < ERROR; i++) { + if (valid_symbols[i]) { + p += sprintf(p, " %s", tree_sitter_wgsl_str((enum Token)i, true)); } + } + *p = '\0'; + return result; +} - if (valid_symbols[Token::DISAMBIGUATE_TEMPLATE]) { - // The parser is telling us the _disambiguate_template token - // may appear at the current position. - // The next token may be the start of a template list, so - // scan forward and use the token-list disambiguation - // algorithm to mark template-list-start and template-list-end - // tokens. These are recorded in the lt and gt bit queues. +/// The external token scanner function. Handles block comments and +/// template-argument-list vs less-than / greater-than disambiguation. +/// @return true if lexer->result_symbol was assigned a Token, or +/// false if the token should be taken from the regular WGSL tree-sitter +/// grammar. +static bool scanner_scan(Scanner *scanner, TSLexer *ts_lexer, + const bool *const valid_symbols) { + Lexer lexer; + lexer_init(&lexer, ts_lexer); + + LOG("scan: '%c' [%u] %s", (char)lexer_peek(&lexer), + ts_lexer->get_column(ts_lexer), valids(valid_symbols)); + + if (valid_symbols[ERROR]) { + ts_lexer->result_symbol = ERROR; + return true; + } - // Call mark_end so that we can "advance" past codepoints without - // automatically including them in the resulting token. - ts_lexer->mark_end(ts_lexer); - ts_lexer->result_symbol = Token::DISAMBIGUATE_TEMPLATE; - - // TODO(dneto): should also skip comments, both line comments - // and block comments. - // https://github.com/gpuweb/gpuweb/issues/3876 - lexer.skip_whitespace(); - if (lexer.peek() == '<') { - if (state.lt_is_tmpl.empty()) { - classify_template_args(lexer); - } + if (valid_symbols[DISAMBIGUATE_TEMPLATE]) { + // The parser is telling us the _disambiguate_template token + // may appear at the current position. + // The next token may be the start of a template list, so + // scan forward and use the token-list disambiguation + // algorithm to mark template-list-start and template-list-end + // tokens. These are recorded in the lt and gt bit queues. + + // Call mark_end so that we can "advance" past codepoints without + // automatically including them in the resulting token. + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = DISAMBIGUATE_TEMPLATE; + + // TODO(dneto): should also skip comments, both line comments + // and block comments. + // https://github.com/gpuweb/gpuweb/issues/3876 + lexer_skip_blankspace(&lexer); + if (lexer_peek(&lexer) == '<') { + if (bitqueue_empty(&scanner->state.lt_is_tmpl)) { + classify_template_args(scanner, &lexer); } - - // This has to return true so that Treesitter will save - // the state generated by the disambiguation scan. - return true; } - lexer.skip_whitespace(); + // This has to return true so that Treesitter will save + // the state generated by the disambiguation scan. + return true; + } + + lexer_skip_blankspace(&lexer); + + // TODO(dneto): checkpoint and rewind if failed. + if (lexer_match_block_comment(&lexer)) { + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = BLOCK_COMMENT; + return true; + } - auto match = [&](Token token) { + // TODO(dneto): Check valid array first. + if (lexer_match(&lexer, '<')) { + if (!bitqueue_empty(&scanner->state.lt_is_tmpl) && + bitqueue_pop_front(&scanner->state.lt_is_tmpl)) { ts_lexer->mark_end(ts_lexer); - ts_lexer->result_symbol = token; + ts_lexer->result_symbol = TEMPLATE_ARGS_START; return true; - }; - - // TODO(dneto): checkpoint and rewind if failed. - if (lexer.match_block_comment()) { - return match(Token::BLOCK_COMMENT); } - - // TODO(dneto): Check valid array first. - if (lexer.match('<')) { - if (!state.lt_is_tmpl.empty() && state.lt_is_tmpl.pop_front()) { - return match(Token::TEMPLATE_ARGS_START); - } - if (lexer.match('=')) { - return match(Token::LESS_THAN_EQUAL); + if (lexer_match(&lexer, '=')) { + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = LESS_THAN_EQUAL; + return true; + } + if (lexer_match(&lexer, '<')) { + // Consume the '<' in the lt queue. + // Litmus test: "alias z = a<1<()>;" + if (!bitqueue_empty(&scanner->state.lt_is_tmpl)) { + bitqueue_pop_front(&scanner->state.lt_is_tmpl); } - if (lexer.match('<')) { - // Consume the '<' in the lt queue. - // Litmus test: "alias z = a<1<()>;" - if (!state.lt_is_tmpl.empty()) { - state.lt_is_tmpl.pop_front(); - } - if (lexer.match('=')) { - return match(Token::SHIFT_LEFT_ASSIGN); - } - return match(Token::SHIFT_LEFT); + if (lexer_match(&lexer, '=')) { + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = SHIFT_LEFT_ASSIGN; + return true; } - return match(Token::LESS_THAN); + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = SHIFT_LEFT; + return true; } + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = LESS_THAN; + return true; + } - // TODO(dneto): check valid array first. - if (lexer.match('>')) { - if (!state.gt_is_tmpl.empty() && state.gt_is_tmpl.pop_front()) { - return match(Token::TEMPLATE_ARGS_END); - } - if (lexer.match('=')) { - return match(Token::GREATER_THAN_EQUAL); + // TODO(dneto): check valid array first. + if (lexer_match(&lexer, '>')) { + if (!bitqueue_empty(&scanner->state.gt_is_tmpl) && + bitqueue_pop_front(&scanner->state.gt_is_tmpl)) { + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = TEMPLATE_ARGS_END; + return true; + } + if (lexer_match(&lexer, '=')) { + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = GREATER_THAN_EQUAL; + return true; + } + if (lexer_match(&lexer, '>')) { + // Consume the '>' in the gt queue. + if (!bitqueue_empty(&scanner->state.gt_is_tmpl)) { + bitqueue_pop_front(&scanner->state.gt_is_tmpl); } - if (lexer.match('>')) { - // Consume the '>' in the gt queue. - if (!state.gt_is_tmpl.empty()) { - state.gt_is_tmpl.pop_front(); - } - if (lexer.match('=')) { - return match(Token::SHIFT_RIGHT_ASSIGN); - } - return match(Token::SHIFT_RIGHT); + if (lexer_match(&lexer, '=')) { + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = SHIFT_RIGHT_ASSIGN; + return true; } - return match(Token::GREATER_THAN); + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = SHIFT_RIGHT; + return true; } - - return false; // Use regular parsing + ts_lexer->mark_end(ts_lexer); + ts_lexer->result_symbol = GREATER_THAN; + return true; } - /// Serializes the scanner state into @p buffer. - unsigned serialize(char* buffer) { - if (state.empty()) { - return 0; - } + return false; // Use regular parsing +} + +/// Serializes the scanner state into @p buffer. +static unsigned scanner_serialize(Scanner *scanner, char *buffer) { + if (bitqueue_empty(&scanner->state.lt_is_tmpl) && + bitqueue_empty(&scanner->state.gt_is_tmpl)) { + return 0; + } #if ENABLE_LOGGING - std::string lt_str; state.lt_is_tmpl.to_chars(lt_str); - std::string gt_str; state.gt_is_tmpl.to_chars(gt_str); - LOG("serialize(lt_is_tmpl: %s, gt_is_tmpl: %s)", - lt_str.c_str(), gt_str.c_str()); + char lt_str[256], gt_str[256]; + bitqueue_to_chars(&scanner->state.lt_is_tmpl, lt_str); + bitqueue_to_chars(&scanner->state.gt_is_tmpl, gt_str); + LOG("serialize(lt_is_tmpl: %s, gt_is_tmpl: %s)", lt_str, gt_str); #endif - size_t bytes_written = 0; - auto write = [&](const void* data, size_t num_bytes) { - assert(bytes_written + num_bytes <= - TREE_SITTER_SERIALIZATION_BUFFER_SIZE); - memcpy(buffer + bytes_written, data, num_bytes); - bytes_written += num_bytes; - }; - write(&state.lt_is_tmpl, sizeof(state.lt_is_tmpl)); - write(&state.gt_is_tmpl, sizeof(state.gt_is_tmpl)); - // TODO(dneto): implicit conversion be narrowing. - return bytes_written; - } + size_t bytes_written = 0; + memcpy(buffer + bytes_written, &scanner->state.lt_is_tmpl, + sizeof(scanner->state.lt_is_tmpl)); + bytes_written += sizeof(scanner->state.lt_is_tmpl); + memcpy(buffer + bytes_written, &scanner->state.gt_is_tmpl, + sizeof(scanner->state.gt_is_tmpl)); + bytes_written += sizeof(scanner->state.gt_is_tmpl); + // TODO(dneto): implicit conversion be narrowing. + return (unsigned)bytes_written; +} - /// Deserializes the scanner state from @p buffer. - void deserialize(const char* const buffer, unsigned length) { - if (length == 0) { - state = {}; - } else { - size_t bytes_read = 0; - auto read = [&](void* data, size_t num_bytes) { - assert(bytes_read + num_bytes <= length); - memcpy(data, buffer + bytes_read, num_bytes); - bytes_read += num_bytes; - }; - read(&state.lt_is_tmpl, sizeof(state.lt_is_tmpl)); - read(&state.gt_is_tmpl, sizeof(state.gt_is_tmpl)); +/// Deserializes the scanner state from @p buffer. +static void scanner_deserialize(Scanner *scanner, const char *buffer, + unsigned length) { + if (length == 0) { + memset(&scanner->state, 0, sizeof(scanner->state)); + } else { + size_t bytes_read = 0; + memcpy(&scanner->state.lt_is_tmpl, buffer + bytes_read, + sizeof(scanner->state.lt_is_tmpl)); + bytes_read += sizeof(scanner->state.lt_is_tmpl); + memcpy(&scanner->state.gt_is_tmpl, buffer + bytes_read, + sizeof(scanner->state.gt_is_tmpl)); + bytes_read += sizeof(scanner->state.gt_is_tmpl); #if ENABLE_LOGGING - std::string lt_str; state.lt_is_tmpl.to_chars(lt_str); - std::string gt_str; state.gt_is_tmpl.to_chars(gt_str); - LOG("deserialize(lt_is_tmpl: %s, gt_is_tmpl: %s)", - lt_str.c_str(), gt_str.c_str()); + char lt_str[256], gt_str[256]; + bitqueue_to_chars(&scanner->state.lt_is_tmpl, lt_str); + bitqueue_to_chars(&scanner->state.gt_is_tmpl, gt_str); + LOG("deserialize(lt_is_tmpl: %s, gt_is_tmpl: %s)", lt_str, gt_str); #endif - assert(bytes_read == length); - } + assert(bytes_read == length); } -}; - -} // anonymous namespace - -extern "C" { +} // Called once when language is set on a parser. // Allocates memory for storing scanner state. -void* tree_sitter_wgsl_external_scanner_create() { - return new Scanner(); +void *tree_sitter_wgsl_external_scanner_create() { + Scanner *scanner = (Scanner *)calloc(1, sizeof(Scanner)); + return scanner; } // Called once parser is deleted or different language set. // Frees memory storing scanner state. -void tree_sitter_wgsl_external_scanner_destroy(void* const payload) { - Scanner* const scanner = static_cast(payload); - delete scanner; +void tree_sitter_wgsl_external_scanner_destroy(void *payload) { + Scanner *scanner = (Scanner *)payload; + free(scanner); } // Called whenever this scanner recognizes a token. // Serializes scanner state into buffer. -unsigned tree_sitter_wgsl_external_scanner_serialize(void* const payload, - char* const buffer) { - Scanner* scanner = static_cast(payload); - return scanner->serialize(buffer); +unsigned tree_sitter_wgsl_external_scanner_serialize(void *payload, + char *buffer) { + Scanner *scanner = (Scanner *)payload; + return scanner_serialize(scanner, buffer); } // Called when handling edits and ambiguities. // Deserializes scanner state from buffer. -void tree_sitter_wgsl_external_scanner_deserialize(void* const payload, - const char* const buffer, - unsigned const length) { - Scanner* const scanner = static_cast(payload); - scanner->deserialize(buffer, length); +void tree_sitter_wgsl_external_scanner_deserialize(void *payload, + const char *buffer, + unsigned length) { + Scanner *scanner = (Scanner *)payload; + scanner_deserialize(scanner, buffer, length); } // Scans for tokens. -bool tree_sitter_wgsl_external_scanner_scan(void* const payload, - TSLexer* const lexer, - const bool* const valid_symbols) { - Scanner* const scanner = static_cast(payload); - if (scanner->scan(lexer, valid_symbols)) { - LOG("scan returned: %s", str(static_cast(lexer->result_symbol))); +bool tree_sitter_wgsl_external_scanner_scan(void *payload, TSLexer *lexer, + const bool *valid_symbols) { + Scanner *scanner = (Scanner *)payload; + if (scanner_scan(scanner, lexer, valid_symbols)) { + LOG("scan returned: %s", + tree_sitter_wgsl_str((enum Token)lexer->result_symbol, false)); return true; } return false; } - -} // extern "C" diff --git a/src/tree_sitter/parser.h b/src/tree_sitter/parser.h index 17f0e94..799f599 100644 --- a/src/tree_sitter/parser.h +++ b/src/tree_sitter/parser.h @@ -47,6 +47,7 @@ struct TSLexer { uint32_t (*get_column)(TSLexer *); bool (*is_at_included_range_start)(const TSLexer *); bool (*eof)(const TSLexer *); + void (*log)(const TSLexer *, const char *, ...); }; typedef enum { diff --git a/tree-sitter-wgsl.wasm b/tree-sitter-wgsl.wasm index b1235d2428767f1ad6ab89371275e6f9f412dccc..2fd6d5bbdf8eff5982065297ca6d8a3ad3fb62e0 100755 GIT binary patch delta 8833 zcmai(3v`r4mdC5Uex#G`4$UhB0{W$Szd{5Ag%SCf0|>H$4|dk0kck*PbO3n-babU7 z2~Lkj34B4a8YPRIF|a{%M z$;?=l1;?v}JCFmf8LOA%&>afX;?0VYHgc}3#O3$0J+;%=1)t3w#NYFHC-Juddp!4y z?q_p^_{Sv0D*pwfIF)D{6cQie2}Q&o_p!%|iGOD~!2A;8^S$lyQsTYL zJBW9)zcS*tmA|msYB?#2*2;$pV1C4L(m zwk~NMDZcM!FHleX20J`XyoVh&5cjvu8wsQFHa8JRczQE&Nq2j^g}4m2f!1#&#b@lG zjrbZ*XeWMykGO;QRpw4&PI&Iu)(!X#U(I~tD{LMiz8+h@fE00de1(KOy@;@bw^K~~ z9>0td;&vV{CBDj+eFt$l@2-rvp(mE3^Cv}=9Yl#gVy+~9lh3c3cpLM6i|uDjV?{i6 zkoaBZTH=V!VWW-|@3BEW@n+`Z#9whR4a8TN8;Rdx`zB(3_|1fzix$Fio*ix_#V%H~ z5uaynCvIl$AiludNqmMm_pEjHZOr+^mzX2O4K|030#cl0gF@m>yq_ZC0_I}k>-<(q zh+pG!Q%c;-<2#7oKEWAkApU~w8;OhfJv0%Y<$BjlT*vjZ zh4^z-?yURYN{W20e{ICa_&v81Z)ffxev7%2_$mjO+icx|TzDuDJ1@cKMaeAzhei*#6^DlNJ@yS`4gm+_zd6r9mJn=M$3q|`T6s&oD_%IL6rD7 zJE$by#}2BA4{-qd?QyoRA+F+zcaV4|--%k{?-IlI4(dp8i36x7ewQa4CpMWIh+k!H zB>s{YY$E=M$D4__bAT$NwO`;B!6 zuJNVJCysE9j}V7Xv7&$!Z9JinIF|z`BL0}ii-}u#ehKlPdAyYP1ds0^-pgEOao8|< zfpRi9$AuzFT+0qCiBa$DIzapfcDSE-8*>fu7UqM*AMpHI#i&2~SW!m?J9$Dq@sE6_ z$B8TW(lrpDXKp0^6LS;s`&@XMiLdZ@3s}{k6I|(9$sqRKxsAA#??^lGF21B4#GCk1 zbrOHTd^y2Rc@c5Y#$v+tdd4?fIDmTMUChUce_{s>#6>*bNZiWfO~fCv|7PMp^NF^ENwJelbu01fyn{C4 z13cbNe3ZF^IF}uE5+CA9o_pTf;HS*_#P!VK2q~)h@0J2$&R8K~1=|-9H!>F!w=kCw zZ{RmoO5DkBY6o#U#~&^u#W_}#6X$UNQQ{+f$191;c)@Do{hWaP_BijShWIM;LE^(U zhmBfN#QtooBhKRq^~6QY$B8#{zzxJr96%%SS8U%zoX3x_nfNW*AnH#GDgMHhy_I-3 zmx(swS}sHF#K+jagLnszcM?zL4}uo!2JGWEolm@-80$w!QO^bi#5=hz7ZO+W)H69w#)E_tFz)-^+);m5bwpfLWcTSym1 zX|IrR3bsaJAQaGq*LyLbdBbwuKw$&|*}=F$LXXqs1kGp2)C6;A&k620!xswp%wP7L z9!@ko0Y}h@_zaQigcA|)`y5`~sV7d<5Q<{_4un$G^mvHFF;#aO&g@h-I#QR|Z+9vD zN{zml?sw|Se^3kfH0(T(sIrl&b(uQDy5_QMy@B{{&Z&;6826YD_Du?_G$|*k9Y|qFR{pS@rn_fhf(I8MdQgOPx2|Oya;>g~f?mUs6AJo= zY0igX;l;nnq-s9Rt9w)3I<#>1uwO#q^;*GNp-SESCaIfQ(yxb8?b=LF9%PoL^ihhZ zt+c2^!Xd+jLyw;UzfL{gaOMP@LF;_uQyppvzlO6Or2JUag>fofKFM`Yvy}OYPf*+kUI3FrB+G{LZdU-R4TewZVZ~>9zAA zt?dULe&NLhL3XiPHd2SA>8^iBvDWR15}WA)zxhCNaIhzq1N6G0R*y5bxqj+wdQ4W? zztO~_4zcHt2=fm5K9g=!TM4j^`KRQR!FKY8VDmR6oHN;}wvPwWXStnPOL0?bZ_9?( zl?@+W(+$C@Yp40#H*5+Q3ok+K^X8Xp{xb9K*|KD zpGb+RUH#MVPOw7nN*iu}!15Rfp#mkC&-9N>nSy`fwcZeprAEwkPPNL|o?cwW%2fs0 z+s!Ity1MM@d!Z_W$WS0qv1Y(V8D1-0VFP6d=O>JemByzc+vqpTDl!gec1hLW=&~w= z)U{cu4xFAg7r9h_`bSej%9&LsWGLvg>V(U#6HawKrOJa71q+W1Hw)fSBpluaQm#{> zhjBMhQ>MY)FwLjSkn!Nk-LGL0p{>(36a_Kdfd`(iyij*qctf5SmA{+U+U-%vyWOgG zd&y<(_OV!IB;J)}`1gKn_<=G!FD=7ah)d#PQ(jaIK_JrPqvfQEC-R{oS9;^shMP{i zL*4_!WqcS{1m-B6hAY)+MBEjN^vhD#n~w*V%Np~u;9OZ~_82%*V>=bV-PT#1hohl1HD*mAt?&JLp9J&YVdsUD-AfTUv1L;ja_7ffJ^45}Fk?m=~&0c<$ ze!G{nn3sEeY4DO{{xRKmvlnZNH+$-S&+VQ@$2_I`M*kn4ZpnB09g{UG=4^~_l-k@K zLb}D#m^&WaNOokd7`x!U7^(6-6faA?#LsrJW{9oXyo)u1ZOz|enn6nA2pNAn z$uysdi)oXwNsQ76j;nrpWQy;MQN(u94GP4z0u9)i!+biwPg9TSug58(^sy^ zT9Y+;%A)7jEYA_oEXlDrqvGL*u1RkUS7%ksn0-Kg5SZhLk15T-+`;BQ&K>1hy(n|} za{RYl#rnA(ZLCdci$sQ4C>DsP#EnZ}#c8vicy#{s`O`CgZp<@&KI@4mD=Hry?6~(P zt0{WA7$efe=+R=77&%gm5W~eVF=U7sEKH8loRpteC7qRv z9Bx!O;n%BPI476Os!Qi(i6*nEUcVrJt!dX1xAwdw_erDb^Gh;MyGz_HMF7$RG6^yT zG7T~h^5os->8!N)G2^9}3YoukU7I}Fd+hI|P%;nl7-YVZs)c`*|0dmoPfIc4v>DDB z>1&c=8Dyi9t!Y=}ICp)s6hAaqWn7U9rM!RZfp(cPwC$oM7JRD-(V>X}SJ4WGnBCJM z=0QFl=nz6Cipw&ws-s=@)xtHCr6?RNM12yLe_DzaQF%i?gjlf&*&Fk3gP+&IM7|`Y7an=nkMAiuN+35dGd*b zz;+7S#~|vm9YV05hViQ&QVk{67ZvC?LRug$?5GoxgR#YsJUBRliDel3nQEcC3ONj! z1I|NR1nB|!CHO0}4(#$R%v%EAyAjMonEN>TgV0V!YfQqbLC8GFPDq6hDaK`4g!Tu> zS;%xqF(ePtgt0obV9ik^A-xe->eyNF_!s6E2PPXGUk-TwfejE{o= delta 8890 zcmbW64Rlr2mB-Jy_kAVrz2xx?38nWvKFT)%9MB35mkJ09(!u47txOsrb@}*C0@yXR zH_)gVKnUDu0;UpbW{enYO3>hHbOoAO6WUOtPzNMPz`%e+6EQ%P(9ZwdeRl|I*R0jY z+Bx^P&p!L?v(G-~zJ%vr3Y^>>DCnm(7i=Feb^2>ELC;*d&YS+DmFrgssh<7mKU%tc z;kp$uai z&qk%RhDx*ej4zI+^13HJMH6@`Aw}*f;VMc=QM=EvP-Dtm%|WkgQtpmv_Qhj@+#DoT z^RIobO^s`FgeR&c#U~A{s3S#tx1ydD1xMMU;f&9U57lUfM%AmC()E9Wj2oMH!X|h0 zB_7>O12lI)3!(1fMM5@iCFB*h6Z+y7P2QmxX(Q)`O5D{xuBSYt0sP01%lX7-`ntTu z<%r7##9h5yE+oD&$mL?5ZADMBk^I**m2^*R5!pA z#5=&2Q>0C#XiIhtnu)u33tEV6c6gC^uxs8*_;iBH?ZjX5@DAeVct<*kH=!D6{w`9y z%nowTI$Qo356C0V<1Nl7{)*$>Ld*#-AiT`ATu9u)!;6WJb(8i?EY z=4~Wy;r`>qCG7tMaiw!Q)cw~)ijR1LX5xB2?JdObaE2}tA7=Yj;!C{8?Zge7u@2%l z`2Or9uI|47x=8UUpWob%of@cN&LiH;oKJk61KL9TF>?X&x$g5%{5}UosZ8~6Mw-MSqJfP?(YPv`)4m3bdkYHu8G|9P7Q2i&LiH;MVC+f1@~_u z&g1?9;wwC1A@SRM6BeIW-+!ffHqkAb5;EAxTTn{e$o*x+G1t7@HRl?vAbyM2Q%PLG z^Bo|rVRr}J`7f|R4H=wet|hMGqOK#}$`jNR@8-tLpXv_cw|K`oEmCae?^<2NXLtp<7n}e~ zxj&Ei0CPU^Iez(VA+F}PaRKpu=0f5_%vLcecCmvJVqQ=wVHw+(5g%nPCqBtsLHr>f zvP$Cjcs&P*Kj8SSgQTcuMGf%@-r`!~eeAG~cqdO-Py7;Rw1IdNucwi?iTOD3Yc5;n z2~xby4w{J1b3o0+*O*&~JGkgC5+COAt;DrFVLNdPAHojek7zEViEs8U;;lR& z_kW!dc#E&0JmO<)pHKWe_irJ-n_mQkuko2KB({k$e=#Wzu|Wy(F20vbiA(tR$1>tS z@^5S9#0>-82`h-tv3;f6&wPORb;n-ae+NmifemViTiIbP@e%(1R7d;<+t(An$o37y zH`%_C__V{p5%@!eX+%U!%oJ0#JB8u21F4Bn6EH+Dj2_PnL%>!Bga3$8h8U@#XQVbT z%VXIidyoF1*U*B&QYj2=mNHcizujMQP@AF6Ff=pyer0ILQ9?`=uvJfisUm=`@6Hcv z_O{*wADI)D$-$5e4wW%szLFeA44V_;<~2Va{yh?pXo9+Gy1PDcx>B944|;2fmi)y~ zVMdn4yu*ayH6(sDGG$b^&-R|8dm};nJAGzZVKaav_>8aI})78P)!GpEf_PbRhpTi#1;s!EW(A*HXqI3=Qm671im^s~?O?PrBT2|=eY zOt}mZdW?j*n89Oc`;5T8nZ`4DD!m?r7}Z1JAUb@@OnohamhqTw=HjCv5c9A2NFxEg zSe3Rmh7i@7=B8pHo#^vFm>TnYETqOAf=;YH@)O}TMKG3N1f5)9xdJ%56lj0 zhy`A6O=1L0OUBhcV!M2(j+w7wmPR!TRW;JtbEdy<7C7<5bS&EmCa^5(Q8B4x8iCmZ zoU#m{oMIXR(~Q9U)TkEn*{cT_D8Bx-G0l!Q2c{19P(&kUhvjWigxyfP#GJ5>(>}oJsknUuPz|%g z>gsXJ%LvQ~L+4hNs@aepjOfCVp6f;-Atku5RDB^ksBKl_9(6vu>t+@r^9O^2vFosQ zP2f^-MD7d~1`Gnnm}r2BmtNpbTq;x-ekl{OMV}2ymSNae8oULQ#RJ zBrE`dn6nTJ<#TkK5;xu&oG%<)XVzqTOZ>Vo+^H8x$lU6|Q&F;dO;mNJZj+WJy%xg8 z9gmLmHRd6)%uJc<+~68CdnKOL6`UH6;`b!4^Gc8^(sePfbKj_o4cYbJm>Xhl%##{L zH&(6gUa#Rvjp^!=k?>KBYkW3xqiWU=^P@+Z`GH(K*AIwE+! zuk%jBle6-Wp~Yib&J;BprqxV+o#|PlzIO!IO5M$^baRVWvg5M3+vU@0{qIY1Da}BJ znoC_%Dgt$LII)DVjR+AcoWUvTjjsS#9OemO$DJM341J9$<^&T|e%e3s#e?sRk_i^- z7PfF?dZQlmhPUcZL)xUQwcjyT%1V1&^g)?xKZT#oRY#+HG+An|8Ws!Tws}CEa|~Qy z|7zHfyL9B%NQ}pjR^(@1_}>hqo|3FB2wS0_2XPrmBM^QH^C4za=EQWwk!yDhTctIh zs>&R`z?XEx8};J_E2Cbuh4!H_Y9{^GOl@PLgM43`X*$nhj~e@=cEfAGJT{6b4~-cd z#zZ{^e>OHcR?>AgE#*_2Wj8xU~IR81!<{Yi{SQ+-jnvtjULlI`c&HDM-P|#;u9olD)c>E z8itIU`(I_v2v@UlFKdRonseQnVM?RN&5ftnW~i$ugS#I`U4 zUcY+K{@tWh+cWvjTPF8T{=O`*t;yf@`&IqRdG>!y{@x&oB2wo9|0Af*3BC%U#S3Ra z)%nS3x>nFsHDKy{Vf)g(f7W(1*|oD$5-%3`@qd*v*j!+@%sN)}=h-)9)tUQhWMcM` zjFl@hv&Ju3UA1$brrTxnhYx)0XE~YK_>a$wrN$Uz<=PeLj>4E`*UtZks+;oz+URug zuVU5e%&d%@Rark?EPgDOtXjJ=C*7E4{J>mj{$TDykEG9CkUn$nLyM}WE*!2;bGz>` z(!>NYUW^+j#)>gx#Axxv%B7i4Vwhtva#XidJdPA2Mu_1e`pfN$s<$taom=FU>P^kk zFXhqd9cSedz4~U0TrTZbA6;1e+Y9m`P5!iKh);XGdc`H&hDDhHt#8qu%d%YFQ$4R$ z{!+6SFTJm5dK)gF>6v#{&uW)XO8aKk$fBE{%e12B!rI8{#aHAV(mwn6xFne*+92+y z`uG=ekY-ihEk*7)A!_?eG2>AwL?xuh=O^3IKTL}F2q{)W3LxsEekxh`I&^nPq2XDF zcpzSg4^jy|f37A7aX*yliI9L0U630gVTq+dA@1=DF(E8OF`iQ(jWF5`=?|R+mJlC! z1sK0Gh-rA931@|P-T`UD_%2M)2fD$S@o7ZyCHOf^vI&vB4E_wy9>`a)?FXC7kfi}j zh+{B-&RIbQ9A5!1M*A+>4H$R?jtuY+$ZAaXB1C=Gqb-6ggY1N?h0KA?qmUQy%$eu| z?gd#0nGab6nFo0U^00*;Cgfg74hF4)Tt_t55$S2PNtnD4ffT{p2uKZh5A3|RpAIV1=27-Sy$wxP{~-2;$xH4eUW zFh?=uSro}X>Dd3psG9wdS&%g_@Sr^e84KA9*$l~p{+}V=!Shr|2_y#+hjhYuGTL82 zmSfUFOjHl4hGZi<$I*^P`v~kbNDx6~qxGP@;=}&Gjm`{2qhW%DXk&2hg5_G(g5fHb9m`j-c-i Xw5gDrcs^Y{;w#yfRJG! Date: Tue, 3 Sep 2024 05:52:59 +0900 Subject: [PATCH 5/5] Update --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index bc864f3..e0c10de 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,8 @@ "install": "node-gyp-build", "prestart": "tree-sitter build --wasm", "start": "tree-sitter playground", - "test": "node --test bindings/node/*_test.js" + "test": "node --test bindings/node/*_test.js", + "prebuildify": "prebuildify --napi --strip" }, "tree-sitter": [ {